我想过滤数组的CC
地址,并希望将其收集到同一个数组中,
例如
String[] ccAddress = emails.split(";");
ccAddress = Arrays.stream(ccAddress)
.filter(adr -> "".equals(adr) == false)
.collect(Collectors.toArray);// ?????
我的问题是,'有没有直接的方法可以在Java8中将过滤后的元素收集到数组中。 ?
注意:我知道我可以简单地将它们收集到List并写入list.toArray()
来获取数组,但这不是我的问题。
答案 0 :(得分:9)
您检查了documentation吗?
您可以使用Stream.toArray
方法:
String[] ccAddress = emails.split(";");
ccAddress = Arrays.stream(ccAddress)
.filter(addr -> !addr.isEmpty())
.toArray(String[]::new);