Javaの演算に関連する練習問題を新たに選択式で作成しました。
問題数はこれからどんどん増やす予定です。
選択肢をクリックすると下のほうに、正解/不正解と簡単な解説が表示されます。
主な項目
このページの練習問題で出題するおもな項目は以下の通りです。
- リテラル
- 算術演算
- 代入演算
- キャスト
演算に関する選択問題
- 問題文1
- 解答1
- 解答2
- 解答3
- 解答4
- 解答5
- 解答6
- 解答7
- 解答8
- 解答9
- 解答10
次の問題へ
答えおよび解説1
問題
- Javaのプリミティブ型で整数を代入できないもの選んでください
- 整数型の変数として間違っているものを選んでください
- double型の変数に代入できない値を選んでください
- char型の変数に代入できない値を選んでください
- int型の変数に代入するとエラーになる記述を選んでください
- 2進数の値を扱うための記述として正しいものを選んでください
- 16進数の値を扱うための記述として正しいものを選んでください
- キャストの正しい記述方法を選んでください
- int a = 6 / (3 / 2) ; の記述においてaの変数に代入される結果を選んでください
- プリミティブ型ではない型を選んでください
- 演算結果が2.5になるものを選んでください
- 代入演算の説明として間違っているものを選んでください
- 算術演算の説明として間違っているものを選んでください
- キャストの説明として間違っているものを選んでください
選択肢
- int
char
long
boolean - byte
short
int
float - 2.5F
2.5D
‘a’
“a” - “a”
‘a’
‘あ’
128 - 5 / 2
4 / 2
4.0 / 2 - 0b111
0x111
0111
b111 - 0b111
0x111
0111
x111 - [double]5
<double>5
(double)5
{double}5 - 3
4
5
6 - int
String
double
short
boolean - (double)(5 / 2)
5 / 2
(double)5 / 2
(int)5 / 2 - 代入演算は自動的に型変換が行われる
代入時には大きい型から小さい型に型変換される
代入時には小さい型から大きい型に型変換される - 算術演算は自動的に型変換が行われ、同じ型同士の演算を行う
算術演算の結果は被演算子の型と同一となる。例えば、int同士の演算では結果もintとなる
boolean型は算術演算が可能
char型は算術演算が可能 - キャストではどんな型でも必ず強制的に型変換ができる
(型) と記述することで指定した型に型変換ができる
double型からint型へキャストで型変換できる
int型からchar型へキャストで型変換できる
解答
- boolean型は[true]および[false]のみしか代入できません。
- 整数型の変数には、[byte][short][int][long]があり、[float]は浮動小数型となります。
- 2.5Fはfloat型リテラル、2.5Dはdouble型リテラル、’a’はchar型リテラルでdouble型に代入可能です。char型は文字を内部で整数として扱っているため、整数も代入できます。
- “”は文字列リテラルとなる為、char型の変数には代入できません。char型は文字を内部で整数として扱っているため、整数も代入できます。
- 算術演算では片方の被演算子がdoubleだと計算結果もdoubleになり、int同士の算術演算は計算結果もintとなります。
- 2進数リテラルは0b111のように2進数の数値の前に0bを記述します。
- 16進数リテラルは0x111のように16進数の数値の前に0xを記述します。
- キャストは値もしくは変数の左に「(型)」と記述します。
- 3 / 2 はint同士の為[結果が1](1.5にはならない)となり、次に 6 / 1 の計算が行われ[結果6]となります。
- Stringはプリミティブ型のように扱えますが、プリミティブ型とは異なる型です。
- (double)5 と記述することにより、double / int の演算となり、演算結果を小数とすることができます。
- 代入演算は「〇=△」の場合、△の値を〇に代入します。その際に、〇と△の型が異なる場合は型変換を行います。型変換は小さい型から大きい型への変換となります。
- 算術演算時は同じ型同士で演算を行ない、結果もその型となる。また、char型は内部が数値の為、算術演算が可能です。
- キャストを利用した型変換は関連性のある型であれば型変換できますが、全ての型に変換できるわけではありません。(例えば、intからbooleanへの変換などはエラー)
答え
- 4
- 4
- 4
- 1
- 3
- 1
- 2
- 3
- 4
- 2
- 3
- 2
- 3
- 1