読者です 読者をやめる 読者になる 読者になる

へっぽこびんぼう野郎のnewbie日記

けろけーろ(´・ω・`)!

Javaの無名配列の初期化とかについて

PC Java

 public class Main {

    public static void main(String args) {

        int[] array = new int[1];

        array = new int[]{1, 2, 3, 4, 5};

        for(int i : array) {

            System.out.println(i);

        }

    }

}

 配列の長さ1で初期化したあと、無名配列を作ってまた初期化している。

コンパイルエラーにならず、実行もできる。

知らなかった。こうやって使うものなのか。

 

public class DamePattern {

    public static void main(String args) {

        int[] array = new int[1];

        array = {1, 2, 3, 4, 5};

        for(int i : array) {

            System.out.println(i);

        }

    }

} 

↑ こっちはだめぱたーん。({1,2,3,4,5}は宣言時にしか使えないヤツ)

public class O {

    public static void main(String args) {

        int[] array;

        array = new int[]{1, 2, 3, 4, 5};

        for(int i : array) {

            System.out.println(i);

        }

    }

 

}

↑これはおっけい

 

 感覚としては、

1番上は、

Foo foo = new Foo(1, "");

foo = new Foo(5, "12345"); 

 2番目は、

Foo foo = new Foo(1, "");

foo = new Foo(,"12345");

3番目は、

 Foo foo;

foo = new Foo(5, "12345");

 こんな感じだろうか