如何用Java函数式编程改写嵌套三元运算符实现字符串拼接逻辑
Java函数式简化方案
你原有代码的核心逻辑是过滤非空白字符串后用<br>拼接,刚好可以用Stream API直接实现,和你原有三元分支逻辑完全等价:
import java.util.stream.Collectors; import org.apache.commons.lang3.StringUtils; // 直接替换你原有代码段即可 return Stream.of(firstString, secondString) .filter(StringUtils::isNotBlank) .collect(Collectors.joining("<br>"));
逻辑说明
- 自动过滤空白字符串,完全对齐你原来用
StringUtils.isNotBlank的判断规则 - 只有存在2个及以上非空白字符串时,才会插入
<br>分隔符,和你原有拼接逻辑效果完全一致 - 后续如果需要新增更多拼接的字符串,只需要在
Stream.of()的入参里追加即可,不需要修改分支判断逻辑
内容的提问来源于stack exchange,提问作者HybrisNewbie
相关产品推荐
相关产品推荐

