如何将List转换为List。我尝试通过以下方式实现:
List<Object> obj = (some initialization)
List<Dog> dog =(List<Dog>)obj;
所以这会抛出一个错误。
ERROR: Cannot cast from List<Object> to List<Dog>
Where
List<Object>
我从Hibernate查询中获取到了数据
FROM DOG
如何将List转换为List。我尝试通过以下方式实现:
List<Object> obj = (some initialization)
List<Dog> dog =(List<Dog>)obj;
所以这会抛出一个错误。
ERROR: Cannot cast from List<Object> to List<Dog>
Where
List<Object>
我从Hibernate查询中获取到了数据
FROM DOG
迭代 List<Object>
并显式地将每个项转换为所需类型
List<Dog> dog = new ArrayList<Dog>;
for (Object o : obj)
dog.add((Dog) o);
String
的对象,只需要 4 毫秒。所以我认为速度应该足够快;) - Parker_HaloList<Dog>
,在 get()
方法中检查类型。这很容易通过继承 AbstractList
来实现。 - ZhongYu如果您使用 List<?>
,则该转换函数就可以正常工作:
List<?> list = (some initialization);
List<Dog> dog = (List<Dog>)list;
List<Object>
,你仍然可以将其转换为 List<Dog>
。List<Object> list = (some initialization);
List<Dog> dog = (List)list;
当您确定列表实际包含 Dog
对象时(例如作为来自您的 HQL 查询 FROM Dog
的结果值),才应执行此操作。