RubyのようにJavaでnull値をなくす良い方法はありますか?
x = null || "string"
私はこのようなことをしたいです。
String line = reader.readLine() || "";
null 値が渡されないようにします。
RubyのようにJavaでnull値をなくす良い方法はありますか?
x = null || "string"
私はこのようなことをしたいです。
String line = reader.readLine() || "";
null 値が渡されないようにします。
Guavaとそのメソッドを使用できます(Guava 21.0 から削除):Objects.firstNonNull
String line = Objects.firstNonNull(reader.readLine(), "");
または、この特定のケースでは、次のようになりStrings.nullToEmpty
ます。
String line = Strings.nullToEmpty(reader.readLine());
もちろん、それらを頻繁に使用している場合は、両方を静的にインポートできます。
いいえ、Java には null セーフな構文はありません。手動で行う必要があります。または、commons-lang のようなユーティリティを作成または使用することもできます。
String line = StringUtils.trimToEmpty(reader.readLine());
そうすれば、値または "" のいずれかを取得できますnull
あまり。readline() の結果を一時変数に代入し、条件付きで代入できます。
String t = reader.readline();
String line = t == null ? "default" : t;
しかし、それはあなたができる最善のことです。
readLine()
null を返すこともできます。を使用する必要がある場合は、null をチェックする必要がありますString
。