我有一个带有自定义对象的简单数组,并想使用 java 8 流进行过滤。 A[] aArray = new A[3]; A a1 = new A(); a1.setaId(1); a1.setaName("AName1"); B b1 = new B(); b1.setbId(1); b1.setbName("BName1"); a1.setB(b1); aArray[0] = a1; A a2 = new A(); a2.setaId(2); a2.setaName("AName2"); B b2 = new B(); b2.setbId(2); b2.setbName("BName2"); a2.setB(b2); aArray[1] = a2;您能否建议我如何在数组 NOT ON arrayList 上进行过滤流基本上我只想用“BName2”值过滤。
1 回答

杨__羊羊
TA贡献1943条经验 获得超7个赞
如果您在数组中存储唯一元素,那么您可以使用以下方法
如果对象是唯一的
A aWithValidString = Arrays.stream(aArray) .filter(a -> "BName2".equals(a.getB().getbName())) .finAny().orElse(null);
如果数组中有多个带有“Bname2”字符串的对象,则可以使用下面的代码
List<A> filteredObject = Arrays.stream(aArray) .filter(a -> "BName2".equals(a.getB().getbName())) .collect(Collectors.toList());
添加回答
举报
0/150
提交
取消