在Cactoos框架中是否有一些Text装饰器(或其他方式),可以将空字符串替换为空字符串?就像Google Guava中的Strings.nullToEmpty函数一样。
我找到了NoNulls装饰器,但是我只需要替换而不会引发异常。
所以它必须看起来像这样:
String someNullString = null;
new StrictEmptyText(
new TextOf(someNullString) // this row produces NPE for now
).asString(); // ""
非常感谢您的帮助。
答案 0 :(得分:3)
否,没有Text
实现可以直接为您完成此操作。
使用纯仙人掌:
new TextOf(
new UncheckedScalar<>(
new Ternary<>(
someNullString != null,
someNullString,
""
)
).value()
)
答案 1 :(得分:0)
您可以像这样从Java 8使用Optional::ofNullable
:
String str = Optional.ofNullable(someNullString)
.orElse(""); // return empty if someNullString is null or someNullString if not null