[英]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.