Javaの配列やコマンドライン引数に関連する練習問題を新たに選択式で作成しました。
問題数はこれからどんどん増やす予定です。
選択肢をクリックすると下のほうに、正解/不正解と簡単な解説が表示されます。
主な項目
このページの練習問題で出題するおもな項目は以下の通りです。
- 配列
- コマンドライン引数
- 文字列から数値への変換
配列及びコマンドライン引数に関する選択問題
※コマンドライン引数の配列名はargsとします
- 問題文1
- 解答1
- 解答2
- 解答3
- 解答4
- 解答5
- 解答6
- 解答7
- 解答8
- 解答9
- 解答10
次の問題へ
答えおよび解説1
問題
- コマンドライン引数の説明として間違っているものを選んでください
- 「java Test 1 2 3」と実行した際にエラーとなる記述を選んでください
- 配列の説明として間違っているものを選んでください
- 「String[] str = new String[3];」の要素数として正しいものを選んでください
- 「String[] str = {“a”,”b”,”c”,”d”};」の配列内から”c”の文字列を取得する際の記述を選んでください
- 「String[][] str = 〇;」〇の部分のプログラムとして正しい記述を選んでください
- 「int[][] nums = {1,2,3,4,5};」を記述した際、nums.lengthで取得できる数値として正しいものを選んでください
- 「int[][] nums = {{1,2},{3,4,5}};」を記述した際、nums.lengthで取得できる数値として正しいものを選んでください
- 「int[][] nums = {{1,2,3,4,5},{6,7,8},{9,10}};」を記述した際、nums[2][1]で取得できる数値として正しいものを選んでください
- Integer.parseInt(〇)の部分に記述するプログラムとして正しい記述を選んでください
- 文字列を小数として変換するプログラムとして正しい記述を選んでください
選択肢
- コマンドライン引数はint型として利用できない
コマンドライン引数を利用しない場合は、main()メソッドの引数を「main(String[] args)」から「main()」に変更する
実行時「java Test a b c」と入力した場合、args.lengthを利用すると3が取得できる
main()メソッドを「main(int[] args)」と変更すると、コンパイルエラーは起こらないが、実行時にエラーとなる - System.out.println(args[0]);
System.out.println(args[1]);
System.out.println(args[2]);
System.out.println(args[3]); - 配列はいつでも要素数を変更することができる
同一の配列内で違う型のデータを扱うことはできない
配列の実体を確保すると要素数分の初期値が自動的に代入される
配列のインデックスは0からスタートする - 0
1
2
3 - str[0]
str[1]
str[2]
str[3] - {{1,2},{3,4,5}}
{{“1″,”2”},{“3″,”4″,”5”}}
{{1,2},{“3″,”4″,”5”}}
{{1,2,3,4,5}} - 5
4
3
2 - 5
4
3
2 - 4
5
7
10 - “5”
“4,4”
5
4.4 - Integer.parseInt(“7.7”)
Integer.parseDouble(“7.7”)
Double.parseInt(“7.7”)
Double.parseDouble(“7.7”)
解答
- コマンドライン引数はmain()メソッドの引数として値を取得します。その際は、コマンドライン引数を利用しなくとも必ずString型の配列を記述する必要があります。
- コマンドライン引数のデータはそれぞれ、1はrgs[0] , 2はargs[1] , 3はargs[2] と対応する為、args[3]にはデータが無いためエラーとなります。
- 配列は一度、実体確保時に決めた要素数から変更することができません
- 「型[] 変数名 = new 型[要素数];」となる為、3が正解です。
- {“a”,”b”,”c”,”d”}は右のように対応する為、str[2]が正解となります。(”a”はstr[0] , “b”はstr[1] , “c”はstr[2] , “d”はstr[3])
- 配列は多次元配列でも同じ型のデータしか扱えない為、{{“1″,”2”},{“3″,”4″,”5”}}が正解です。
- {1,2,3,4,5}の配列の要素数を取得できます。配列内の要素数である5が取得できます。
- {{1,2},{3,4,5}}の配列は二次元配列です。{配列1,配列2}という形の場合、nums.lengthでは2が取得できます。例えば、nums[1].lengthと記述すると配列2内の要素数である3が取得できます。
- 配列のインデックスは0から始まり、二次元配列nums[2][1]では{{0番目},{1番目},{2番目}}となり、2番目の{9,10}の10が取得できます
- Double.parseDouble(文字列)の文字列部分には小数に変換できる文字列を記述します。
答え
- 2
- 4
- 1
- 4
- 3
- 2
- 1
- 4
- 4
- 1
- 4