java中泛型怎么强制转换
java中泛型怎么强制转换classBextendsApublicList<A>getList(){...}getList方法返回的是List<A>.我现在非常确切的指导...
java中泛型怎么强制转换
class B extends A
public List<A> getList() {
...
}
getList方法返回的是List<A>.我现在非常确切的指导List里的都是B.怎么强转成List<B>啊...跪求...谢谢...
主要是B当中有其他的方法.需要调用B里的...
如果是泛型A的话,那只能调用父类A中的方法...
所以我需要强转. 展开
class B extends A
public List<A> getList() {
...
}
getList方法返回的是List<A>.我现在非常确切的指导List里的都是B.怎么强转成List<B>啊...跪求...谢谢...
主要是B当中有其他的方法.需要调用B里的...
如果是泛型A的话,那只能调用父类A中的方法...
所以我需要强转. 展开
8个回答
展开全部
可以在使用的时候再强转
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java 中的list不是协变的,建议你写成 public List<? entends A> 这样的话可以存B类型。针对上诉问题,如果要强转, 可以循环遍历 例如 getList().stream.map(a->(B)a).collect(Collectors.toList());
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个不用强转吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询