私は常にコードの多くでこれを参照してください。isEmpty()メソッドはNULL値をチェックしますか?
String s;
if (s == null || s.isEmpty()) {
//do something
}
しかしだけで十分
String s;
if (s.isEmpty()) {
//do something
}
私はJavaFXのテキストフィールドの虚しさを確認する場合は特に、私は好奇心ではありません。一般に
私は常にコードの多くでこれを参照してください。isEmpty()メソッドはNULL値をチェックしますか?
String s;
if (s == null || s.isEmpty()) {
//do something
}
しかしだけで十分
String s;
if (s.isEmpty()) {
//do something
}
私はJavaFXのテキストフィールドの虚しさを確認する場合は特に、私は好奇心ではありません。一般に
、
s.isEmpty()
checks if s
is an empty string、その中にない文字を、すなわち文字列。 s
がヌルの場合、s.isEmpty()
を呼び出す(またはs
で他のメソッドを呼び出そうとする)と、NULLポインタ例外がスローされます。
は、(それが実際に依頼する意味がないことに注意してください「null値のためisEmpty()
方法のチェックをい」:s
がある場合、このメソッドが呼び出されないことができます:s
がnullの場合手立てそのs.isEmpty()
できるおそらくチェックはありませんあなたが明示的にヌル(textField.setText(null)
)にそれを明示的に設定しない限り、TextField.getText()
はヌルを返さないことに注意してください。言い換えれば、デフォルト値は空の文字列であり、ユーザタイプとして呼び出される "内部"メソッドによってtextプロパティがnullに設定されることはありません。テキストフィールドは定義されている即時クラス(または作成されたFXMLファイルのコントローラ)に限定する必要があるため、setText(...)
メソッドへの呼び出しを制御することができます。
TextField textField = ... ;
if (textField.getText() == null || textField.getText().isEmpty()) {
// ...
}
はtextField.getText() == null
が常に偽であることを保証することにより
TextField textField = ... ;
if (textField.getText().isEmpty()) {
// ...
}
に相当します。
's'がインスタンスを参照していない場合、インスタンスメソッドを呼び出すことはできません。 [*変数 's'はオブジェクトではありません。*](http://stackoverflow.com/documentation/java/4388/common-java-pitfalls/24130/) –
試しましたか? –
'null 'を事前にチェックせずに' isEmpty() 'を呼び出すと、' NullPointerException'が発生する可能性があります。 –