0

以下のコードでは、最後の SOP が印刷されていません。

String A=null;

if (A.contains("xyz")) {
    System.out.println("loop1");
}
System.out.println(A);
4

4 に答える 4

4

A はnullで、あなたは呼び出していますif (A.contains("xyz"))

null参照結果に対する呼び出しでNullPointerExceptionは、上記のステートメントが try/catch でラップされていないため、以下のコードを実行せずに例外が上位レベルに伝播します。

次のように変更します。

String A="";
于 2012-11-15T20:31:19.397 に答える
4
if (A.contains("xyz")) { 

A が null であるため、A で Contains を呼び出そうとしています。したがって、NPE

于 2012-11-15T20:31:21.777 に答える
4

上記の A は null であるため、RuntimeException であるNullPointerException (NPE) がスローされます。

nullで呼び出しが実行されると、例外がスローされます。あなたの場合は、containsメソッド呼び出しです。

A.contains("xyz")
于 2012-11-15T20:31:27.853 に答える
0

String A=null;文字列参照 A を null に設定しています。この時点で参照がありますが、まだオブジェクトを指していません。次に、メソッドを呼び出してオブジェクトを指しているかのように参照を使用しようとすると.contains、参照が指している場所で実行するコードがないため、NullPointerException が発生します。

于 2012-11-15T20:37:30.140 に答える