定义数组时的花括号

Lee*_*fin 17 java arrays curly-braces

关注以下代码:

int[] to = new int[] { text };
Run Code Online (Sandbox Code Playgroud)

我理解它试图定义一个整数数组,但花括号在数组定义中做了什么?

Ego*_*gor 17

这只是创建具有初始元素的数组的快捷代码,如下所示(相同):

    int[] to = new int[] { text };
    int[] to = { text };
Run Code Online (Sandbox Code Playgroud)

可以替代

    int[] to = new int[1];
    to[0] = text;
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.


SLa*_*aks 12

花括号包含填充数组的值.


Jam*_*gne 5

该语法允许您定义数组的内容,通常称为数组文字。

在这种情况下,实际上可以简化为:

int[] to = { 1, 2, 7, etc. };
Run Code Online (Sandbox Code Playgroud)

new int[]仅在不属于分配的情况下才需要在其之前添加,例如:

someFunction(new int[]{1, 3, 5});
Run Code Online (Sandbox Code Playgroud)