≪Java≫ 条件演算子 エラーになるのは?

≪Java≫ 条件演算子 エラーになるのは?

【正しい構文】

「結果を格納する変数」 =
「条件式」 ? 「条件式がtrueの場合の値」 : 「条件がfalseの場合の値」

↓ 例( n>10 が true ならば、a=1 、 false ならば a=0 )
a = n>10 ? 1 : 0 ;

↓ 結果に式を使用しても問題なし
a = n>10 ? 1+n : 0 ;

↓ ()でくくると見やすい
a = (n>5) ? (1+n) : 0 ;

【間違った書き方】

↓ どこかが空白
「条件式」 ? 「条件式がtrueの場合の値」 : 「空白」

【正しい構文 (入れ子の場合)】

「条件式①」 ? 「条件式①がtrueの場合の値」 : ( 「条件式②」 ? 「条件式②がtrueの場合の値」 : 「条件式②がfalseの場合の値」 )

↓ 例( n>10 が true ならば、a=1 、 n>0が ture ならば a=0 、n>0 が false ならば a=-1 )
a = n>10 ? 1 : ( n>0 ? 0 : -1 );
※言い換えると、「nが10より大きければ『1』、0より大きく10以下ならば『0』、それ以外なら『-1』

↓ ()がなくてもOK
a = n>10 ? 1 : n>0 ? 0 : -1 ;



引っ越し前の記事
シェアする
senをフォローする
プレミア商品・お得商品情報局(予約・再販情報も)


タイトルとURLをコピーしました