?演算子
日本語 | はてな演算子 |
英語 | question operator |
ふりがな | はてなえんざんし |
フリガナ | ハテナエンザンシ |
?の左側がtrueなら:の左側を、falseなら右側を返す演算子。
唯一の三項演算子。
「評価式 ? 結果A : 結果B」という形式で使用する。「評価式」がtrueの場合は「結果A」を、falseの場合は「結果B」を返す。
ifと同じ事を演算子で実現したい場合に使用する。
値を返すだけならifよりも簡単に記述できる反面、分岐処理がif以外にあることになるため可読性が落ちることにも継ながる。
この演算子そのものがマイナーなため、あまり使用しない方がいいだろう。
唯一の三項演算子。
「評価式 ? 結果A : 結果B」という形式で使用する。「評価式」がtrueの場合は「結果A」を、falseの場合は「結果B」を返す。
ifと同じ事を演算子で実現したい場合に使用する。
値を返すだけならifよりも簡単に記述できる反面、分岐処理がif以外にあることになるため可読性が落ちることにも継ながる。
この演算子そのものがマイナーなため、あまり使用しない方がいいだろう。
参考サイト
- (参考サイトはありません)
// Sample.java
public class Sample
{
public static void main( String[] args )
{
// ?演算子を使用します。
// 評価式がtrueの場合、:の左側が返ります。
int i = true ? 100 : 200;
System.out.println( i );
// 100
// 評価式がfalseの場合、:の右側が返ります。
i = false ? 100 : 200;
System.out.println( i );
// 200
// :の左右で型が違うとコンパイルエラーになります。
// i = true ? 100 : "あいうえお";
// コンパイルエラー:
// 非互換条件オペランド型 int と String
}
}
public class Sample
{
public static void main( String[] args )
{
// ?演算子を使用します。
// 評価式がtrueの場合、:の左側が返ります。
int i = true ? 100 : 200;
System.out.println( i );
// 100
// 評価式がfalseの場合、:の右側が返ります。
i = false ? 100 : 200;
System.out.println( i );
// 200
// :の左右で型が違うとコンパイルエラーになります。
// i = true ? 100 : "あいうえお";
// コンパイルエラー:
// 非互換条件オペランド型 int と String
}
}
// Sample.java public class Sample { public static void main( String[] args ) { // ?演算子を使用します。 // 評価式がtrueの場合、:の左側が返ります。 int i = true ? 100 : 200; System.out.println( i ); // 100 // 評価式がfalseの場合、:の右側が返ります。 i = false ? 100 : 200; System.out.println( i ); // 200 // :の左右で型が違うとコンパイルエラーになります。 // i = true ? 100 : "あいうえお"; // コンパイルエラー: // 非互換条件オペランド型 int と String } }