使用泛型方法在Java中安全地进行强制类型转换

来源:互联网 发布:三国群英传ol 知乎 编辑:程序博客网 时间:2024/05/20 23:04

在Android里面,如果要用一套代码对应多套布局,有时需要做一些类型转换,每次try,catch代码不美观,于是弄了一个Utils类来处理:

public static <T> T safeTypeConvert(Object obj, Class<T> clazz) {        if (obj == null) {            return null;        }        T retObject = null;        try {            retObject = clazz.cast(obj);        } catch (ClassCastException e) {            // silent        }        return retObject;    }

使用方式:

SquareMaskView view = CommonUtils.safeTypeConvert(picture, SquareMaskView.class);            if (view != null) {                //            } else {                //            }