検索

ホームページ  >  に質問  >  本文

Java中null==1,为什么会报错?

if(a=1){
}
当a=null的时候,会报错,为什么呀?
是不是每一个判断都要先判断a是否等于null?

    String a=null;
    if (a.equals("")) {
        System.out.println(1);
    }
PHP中文网PHP中文网2803日前841

全員に返信(4)返信します

  • 黄舟

    黄舟2017-04-18 10:11:58

    まず、if 条件文 if(a=1){} の書き方が間違っています。if(a==1){}
    次に、String の参照型 a が次の場合です。空の場合、 a のメソッドを呼び出すと null ポインタがスローされます

    リーリー

    こう書くと a が null でないことを判定する必要がある a が null でないことを判定する操作を書きたくない場合は

    と書くことができます。 リーリー

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:11:58

    a=1 の構文は何ですか?
    a が String 型の場合;
    a= "1";
    a が int 型の場合;
    a = 1;
    If aはint型、int型はnullを持たない
    nullはStringのみ判定可能

    返事
    0
  • 大家讲道理

    大家讲道理2017-04-18 10:11:58

    if文の括弧内に書いてあるのは判定式、結果は真か偽、書いたa=1は代入式です

    返事
    0
  • ringa_lee

    ringa_lee2017-04-18 10:11:58

    括弧内の型は bool です。あなたの型は割り当てです

    返事
    0
  • キャンセル返事