我有这个泛型列表List<? super Domain>
,包含对Domain:Material和BoM的实现,现在我想分别得到每个实体。
domainList.stream().filter(a -> a.getClass().equals(BoM.class))
.collect(Collectors.toList());
使用此行我List<? super Domain>
只包含BoM object.my问题是如何将此列表转换为List<BoM>
?
答案 0 :(得分:7)
好吧,我这样做:
List<BoM> boms = domainList.stream()
.filter(BoM.class::isInstance)
.map(BoM.class::cast)
.collect(Collectors.toList());