Java 8流字符串为空或空过滤器
我在Stream中有Google Guava:
this.map.entrySet().stream().filter(entity -> !Strings.isNullOrEmpty(entity.getValue()))
.map(obj -> String.format("%s=%s", obj.getKey(), obj.getValue()))
.collect(Collectors.joining(","))
如您所见!String.isNullOrEmpty(entity)
,过滤器函数内部有一条语句。
我不想在项目中再使用番石榴,所以我只想替换为:
string == null || string.length() == 0;
我怎样才能使它更优雅?
回答:
您可以编写自己的谓词:
final Predicate<Map.Entry<?, String>> valueNotNullOrEmpty = e -> e.getValue() != null && !e.getValue().isEmpty();
然后,将其valueNotNullOrEmpty
用作您的过滤器参数。
以上是 Java 8流字符串为空或空过滤器 的全部内容, 来源链接: utcz.com/qa/416847.html