質問: equals() を使って、変数に入っている文字列を比較 いつも大変お世話になっております。 下記のように、変数に入った値によって条件分岐をしたいのですが、 うまくいきません・・。 どのように書くべきでしょうか。 変数aaaに入っている値がnaninaniだったら”~~~”と処理したいのですが。 if(aaa.equals("naninani")){ ~~~省略~~~ } 何卒、初心者なので途方もない質問かもしれませんが、よろしくお願いします。
回答: だいたい合っていますが、文字列(string)にはnullがあるので、 以下のようにする方が良いでしょう。 (1)if (( aaa != null ) && ( aaa.equals("naninani") )) { (2)if ( "naninani".equals(aaa) ) { 各ステートメントの意味 (1)nullでなければequalsメソッドで比較する。 (2)nullでない文字列"naninani"にequalsメソッドを使う。 "naninani".equals(aaa) は aaa が null だと false になります。