使用场景
List<User> users = (List<User>) Obj;
使用的时候IDEA会提示警告 说未检查类型.
解决办法
- 使用@SuperWarning({“unchecked”})进行压制
- 写个工具类进行转换
方法1
@SuperWarning({"unchecked"})
List<User> users = (List<User>) Obj;
方法2
public static <T> List<T> objConvertList(Object obj, Class<T> clazz) {
List<T> result = new ArrayList<>();
if (obj instanceof List<?>) {
for (Object o : (List<?>) obj) {
result.add(clazz.cast(o));
}
return result;
}
return null;
}
注:
个人不喜欢使用注解消除警告,因为觉得这个消除了,但是仍然存在隐患. 所以选择使用静态方法进行转换. 结果可控.
写在最后
本人为纯小白,所写的博客也是因为学习使用中遇到的问题进行查找资料然后解决后才编写的,其中如果有某些有错误,或者涉及侵权的请联系我,
QQ : 994961015
E-mail: yangxj96@126.com