• ベストアンサー

equals("A") ?false : true

質問します。 次の内容のjavaプログラムを見かけました。 if (args[0].equals("A") ? false : true) { この「? false : true」の意味がわかる方、教えてもらえますか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

三項演算子です。 Wikipedia - 条件演算子 # 三項演算子 https://ja.wikipedia.org/wiki/%E6%9D%A1%E4%BB%B6%E6%BC%94%E7%AE%97%E5%AD%90#.E4.B8.89.E9.A0.85.E6.BC.94.E7.AE.97.E5.AD.90 <条件式> ? <真式> : <偽式> で、条件式が真ならば真式の値、偽ならば偽式の値を返します。 ifの中で囲ってるので、 ・args[0].equals("A")が真ならば、三項演算子の結果はfalseで、ifの処理ブロックは不実行。 ・args[0].equals("A")が偽ならば、三項演算子の結果はtrueで、ifの処理ブロックを実行。 とか。

noname#225019
質問者

お礼

ありがとうございました! 自分で検索しても、適切なところに辿り着かず困っていたので 助かりました!!

その他の回答 (1)

回答No.2

 No.1の方が書かれています通り、「三項演算子」の記載方法です。 ですが、何故このようなプログラムを書くのかが不明です。 if( !args[0].equals("A") ) { で済む話ですから。

noname#225019
質問者

お礼

ありがとうございました! 参考になりました!

関連するQ&A