繁体   English   中英

如何在Java中定义具有长度和某些元素值的数组?

[英]How can I define an array with length and some of elements' value in Java?

我需要定义一个数组,我知道前三个元素是1,2,3,但是此数组的长度将是一个已标识的num,例如6,我将在方法中添加其他元素,我使用

int[] a = new int[6]{1,2,3};

但是日食告诉我一个错误。我必须使用ArrayList之类的容器吗? 我可以用数组解决吗? 有什么办法比这优雅吗

int[] a = new int[]{1,2,3,0,0,0}

要么

int[] a = new int[6]

因为未知元素或已知元素可能很多,所以我不想一个接一个地编写它们。

Java不提供执行您要尝试执行的语法。 它要求声明的元素数量与您提供的初始化程序数量匹配。

如果要初始化数组的一部分,可以这样进行:

int[] a = new int[16];
{
    System.arraycopy(new int[] {1,2,3}, 0, a, 0, 3);
}

您只能定义一个固定大小的数组。 如果在创建数据时提供数据,则必须为所有字段赋予一个值。 这就是为什么第一段代码是错误的,并导致您到达第二段代码。

只需初始化数组,然后将0表示不知道的值即可。

int[] a = new int[] { 1,2,3,0,0,0 }

或者,如果使用Integer而不是int,则可以使用null,但是除非您确实需要null值,否则我不建议您这样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM