- ベストアンサー
equals() を使って、変数に入っている文字列を比較
いつも大変お世話になっております。 下記のように、変数に入った値によって条件分岐をしたいのですが、 うまくいきません・・。 どのように書くべきでしょうか。 変数aaaに入っている値がnaninaniだったら”~~~”と処理したいのですが。 if(aaa.equals("naninani")){ ~~~省略~~~ } 何卒、初心者なので途方もない質問かもしれませんが、よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
だいたい合っていますが、文字列(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 になります。
その他の回答 (1)
- ProKaseifu
- ベストアンサー率51% (98/192)
回答No.1
あっているようにみえますよ。 意図したように動いていないのでしたら変数aaaの値に問題があるかもしれません。 変数aaaの値をSystem.out.println("aaa=" + aaa)とかで 表示してみてはどうでしょうか?
お礼
回答ありがとうございます。 nda23さんのアドバイス通りやってみたのですが、 どうしてもif文の{ }ないはスルーされてしまいます。 なんででしょう・・・・ お手上げです・・・。
補足
すいません、 理由が結局わからなかったのですが、解決しました。 ありがとうございました。