优雅的将Object转换成List<?>,避免Unchecked cast:
public static List castList(Object obj, Class clazz)
{
List result = new ArrayList();
if(obj instanceof List<?>)
{
for (Object o : (List<?>) obj)
{
result.add(clazz.cast(o));
}
return result;
}
return null;
}
public static void main(String[] args) {
Object obj = getObj();
List list = castList(obj, User.class);
list.forEach(System.out::println);
}