如何从一个泛型列表转换为java 8中的对象列表?

时间:2015-10-25 06:32:03

标签: java generics java-8

我有这个泛型列表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>

1 个答案:

答案 0 :(得分:7)

好吧,我这样做:

List<BoM> boms = domainList.stream()
            .filter(BoM.class::isInstance)
            .map(BoM.class::cast)
            .collect(Collectors.toList());