Stringの比較

こんな感じで文字列が一致したら処理しようとしていたが、同じ文字列なのに一致しなかった。

    String[] valArray = getResources().getStringArray(arrID);
    String VAL = list_preference.getValue();
    if(VAL == valArray[i]){
        同じ場合の処理
    }

“==”で比較するということは同じオブジェクトかどうかを比較することであって、文字列が一致するかどうかではないらしい。
次のように修正したら思うとおりに動作した。

    String[] valArray = getResources().getStringArray(arrID);
    String VAL = list_preference.getValue();
    if(VAL.equals(valArray[i])){
        同じ場合の処理
    }

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください