Javaの演算に関連する練習問題を選択式で作成しました。
選択肢をクリックすると下のほうに、正解/不正解が表示されます。
主な項目
このページの練習問題で出題するおもな項目は以下の通りです。
-
- リテラル
- 算術演算
- 代入演算
- キャスト
- インクリメント/デクリメント
- 比較演算
- 論理演算
- 文字列比較と文字列連結
演算に関する選択問題
- 問題文1
- 解答1
- 解答2
- 解答3
- 解答4
- 解答5
- 解答6
- 解答7
- 解答8
- 解答9
- 解答10
次の問題へ
答えおよび解説1
問題
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println(5 + 2);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println(5 * 2);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println(5 / 2);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println((double)5 / 2);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println((double)(5 / 2));
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println('a' + 1);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println("a" + 1);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println("a" + 1 + 2);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
System.out.println("a" + (1 + 2));
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
int a = 10;
System.out.println(a * 20);
- 下記のプログラムをコンパイルおよび実行した結果を選んでください
int a = 10;
System.out.println(a += 20); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
int a = 10;
int b = 20;
System.out.println(a += b); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
int a = 10;
System.out.println(a + a++); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
int a = 10;
System.out.println(a + ++a); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
int a = 10;
int b = 20
System.out.println(a < b); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
char a = 'a';
char b = 'b';
System.out.println(a < b); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
String a = "a";
String b = "b";
System.out.println(a < b); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
String a = "a";
String b = "b";
System.out.println(a == b); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
String a = "a";
String b = "b";
String c = "c";
System.out.println(a == b == c); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
String a = "a";
String b = "b";
String c = "c";
System.out.println(a.equals(b || c)); - 下記のプログラムをコンパイルおよび実行した結果を選んでください
String a = "a";
String b = "b";
String c = "c";
System.out.println(a.equals(b) || a.equals(c));
選択肢
- 7
3
2
10 - 7
3
2
10 - 7
2
2.0
2.5 - 7
2
2.0
2.5 - 7
2
2.0
2.5 - 98
a1
コンパイルエラー
実行時エラー - 98
a1
コンパイルエラー
実行時エラー - a3
a12
コンパイルエラー
実行時エラー - a3
a12
コンパイルエラー
実行時エラー - 100
200
コンパイルエラー
実行時エラー - 10
30
コンパイルエラー
実行時エラー - 10
30
コンパイルエラー
実行時エラー - 20
21
コンパイルエラー
実行時エラー - 20
21
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー - true
false
コンパイルエラー
実行時エラー
解答
- 5 + 2の算術演算の問題です。特記事項はありません。
- 5 * 2の算術演算の問題です。特記事項はありません。
- 5 / 2の算術演算の問題です。int型同士の演算は結果もint型の整数となります。
- (double)5のキャストから行われ、小数と整数の演算となり、通常の計算と同じように2.5という結果となります。
- ()で囲まれている為、キャストよりさきに5 /2の算術演算(結果は2)が行われてから小数にキャストされます。
- char型は内部で整数としてデータを扱っている為、算術演算での計算が可能です。
- String型はcharと違い算術演算はできませんが、+は文字列連結となるため、1が後ろに文字列として連結されます。
- +は左から右へと演算が行われる為、”a” + 1の後に(結果は”a1″)、”a1″ + 2という演算が行われて”a12″となります。
- ()内の1 + 2から演算され、”a” + 3という文字列連結が行われます。
- aには10が代入されており、10 * 20の結果が出力されます。
- aに代入されている10と20を加算して後、再度aに代入しています。出力はその加算後のaのデータとなります。
- aに代入されている10とbに代入されている20を加算して後、再度aに代入しています。出力はその加算後のaのデータとなります。
- a++は後置のインクリメントで、他の式の評価後(出力後)にインクリメントされます。
- a++は前置のインクリメントで、加算前にインクリメントされます。
- 数値同士の比較演算となっており、10 < 20では合致してtrueとなります。
- char型は内部で数値データを扱っている為、数値同士の比較演算となります。ちなみに98 < 99という数値の比較となりtrueとなります。
- String型はchar型と違い数値として扱うことができないため、大小関係を比較することはできません。よってコンパイルエラーとなります。
- ==は数値の比較ではなく、インスタンスが同一であるかどうかを確認する演算となります。ちなみに同じインスタンスではないため、falseという結果になります。
- ==の左右は同一の型(種類)であれば比較できます。しかし、今回はa == bの比較結果はfalseとなり、演算はfalse == “c”の比較となりコンパイルエラーです。
- 文字列比較は「String型.equals(String型)」となります。a.equals(b || c)だと、bとcが先に演算が行われます。||の左右にはString型は利用できないため、コンパイルエラーとなります。
- a.equals(b)とa.equals(c)の演算が先に行われます。false||falseの結果となり、最終結果はfalseとなります。
答え
- 1
- 4
- 2
- 4
- 3
- 1
- 2
- 2
- 1
- 2
- 2
- 2
- 1
- 2
- 1
- 1
- 3
- 2
- 3
- 3
- 2