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

A.J*_*Jac 2 java string nullpointerexception

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

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

String myString= jsonElement.getAsJsonObject().get("myString").getAsString();
Run Code Online (Sandbox Code Playgroud)

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

有什么办法可以做到:

String myString = jsonElement.getAsJsonObject().get("myString")
    .getAsString() || "defaultValue";
Run Code Online (Sandbox Code Playgroud)

kor*_*lar 5

您可以使用Optional它,例如:

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