繁体   English   中英

Java字符串设置默认值,如果为null

[英]Java string set default value if null

如果赋值给出nullPointerException,是否有一种有效的方法将字符串设置为某个默认值?

说即时初始化这样的字符串:

String myString= jsonElement.getAsJsonObject().get("myString").getAsString();

如果它给nullPointer我需要给它一个默认值,我知道我可以用“ if”检查,但是那是唯一的方法吗? 当我启动大约20个字符串时,这将意味着很多检查。

有什么办法可以做到:

String myString = jsonElement.getAsJsonObject().get("myString")
    .getAsString() || "defaultValue";

您可以为此使用Optional ,如下所示:

Optional.of(jsonElement).map(element -> element.getAsJsonObject()).map(o -> o.get("myString")).map(e -> e.getAsString()).orElse("defaultValue");

怎么做才能做到这一点。

String getOrDefault(JsonElement jsonElement, String key)
    JsonObject obj = jsoneElement.getAsJsonObject().get(key);
    return obj==null?"default":obj.getAsString();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM