Javaプログラミング初心者のためのページ -3ページ目

配列

複数の同じ型のデータをひとまとめにしたものを配列とよびます。
1つずつのデータのことを要素とよび、各要素は0から始まる要素番号
(インデックス、添え字)で指定します。

配列は以下の形式で作成できます。


要素の型[] 配列名 = new 要素の型[要素数];


各要素がint型の5つの要素を持つ配列xを作成するには、


int[] x = new int[5];


とします。
各要素には0が格納された状態で配列が作成されます。
各要素へアクセスするには、


配列名[要素番号]


とします。要素番号は0から要素数-1までの整数値をとります。
上記の例では、

x[0]
x[1]
x[2]
x[3]
x[4]

が作成されます。


問題:以下のプログラムのコンパイル・実行結果として適切なものを選択しなさい。

A. x[0]に値を代入していないのに表示させようとしているため、コンパイルエラー
B. x[1]、x[2]、x[3]しか使用できないため、コンパイルエラー
C. 0が表示される
D. nullが表示される


class M{
  public static void main(String[] args){
    int[] x = new int[3];
    System.out.println(x[0]);
  }
}














正解:
C. 0が表示される

コンストラクタ:問題4

問題:以下のプログラムのコンパイル・実行結果として適切なものを選択しなさい。
A. コンストラクタ定義内で引数iを使用していないためコンパイルエラー。
B. 引数のないコンストラクタを定義していないためコンパイルエラー。
C. 正常に実行され、0と表示される
D. 正常に実行され、Aと表示される

class M {
    public static void main(String[] args) {
        A a = new A(0);
    }
}
class A{
    A(int i){
        System.out.println("A");
    }
}
























解答:
D. 正常に実行され、Aと表示される

コンストラクタ:問題3

問題:以下のプログラムのコンパイル・実行結果として適切なものを選択しなさい。
A. コンストラクタ定義内で引数iを使用していないためコンパイルエラー。
B. 引数のないコンストラクタを定義していないためコンパイルエラー。
C. 正常に実行され、0と表示される
D. 正常に実行され、Aと表示される

class M {
    public static void main(String[] args) {
        A a = new A();
    }
}

class A{
    A(int i){
        System.out.println("A");
}
}

























解答:
B. 引数のないコンストラクタを定義していないためコンパイルエラー。

解説:
引数付きのコンストラクタを1つでも定義していた場合、
デフォルトコンストラクタ(引数のないコンストラクタ)は作成されません。