什么';这个Java程序怎么了?
为什么它不影响数组“a”的长度?我做错了什么什么';这个Java程序怎么了?,java,arrays,Java,Arrays,为什么它不影响数组“a”的长度?我做错了什么 问题是,我被要求使用循环向数组长度添加5。我甚至不能直接增加长度。这看起来很简单,但我仍在学习过程中。我昨天做了,但我不记得是怎么做的。您只是在更改x的值,还必须重新指定此值以更改数组长度 class Main { public static void main(String[] args) { int x = 3; int [] a = new int [x]; x+=5; S
问题是,我被要求使用循环向数组长度添加5。我甚至不能直接增加长度。这看起来很简单,但我仍在学习过程中。我昨天做了,但我不记得是怎么做的。您只是在更改x的值,还必须重新指定此值以更改数组长度
class Main {
public static void main(String[] args) {
int x = 3;
int [] a = new int [x];
x+=5;
System.out.println((x+=5));
System.out.println(a.length);
}
}
您只是在更改x的值,还必须重新分配此值以更改数组长度
class Main {
public static void main(String[] args) {
int x = 3;
int [] a = new int [x];
x+=5;
System.out.println((x+=5));
System.out.println(a.length);
}
}
仅仅改变x的值是没有帮助的
您需要将修改后的值显式地分配回数组中仅仅更改x的值是没有帮助的
您需要将修改后的值显式地分配回数组中首先,您想实现什么? 在数组创建过程中,数组的长度将等于x值(代码的第二行),
如果你想使用动态数组,你应该考虑使用<代码> java .UTIL.ARARYLIST/<代码> < /P> < P>首先,你想要达到什么目标? 在数组创建过程中,数组的长度将等于x值(代码的第二行),
如果你想使用动态数组,你应该考虑使用<代码> java .UTIL.ARARYLIST//> > < P>不能直接增加数组的大小。稍后,您将了解
ArrayList
s。可以将数组变量重新分配给新数组;长度不是数组类型的一部分。所以,让我们把它分成几个步骤
5
添加到该变量for
循环将旧数组的元素复制到新数组中的相应位置,但系统。arrayCopy
较短列表
和阵列列表
文档,了解人们在实践中是如何做到这一点的当你做这样的练习时,一定要先把它分解成单独的步骤。在编程时,将方法分解为只做一件事的单个方法 不能直接增加数组的大小。稍后,您将了解
ArrayList
s。可以将数组变量重新分配给新数组;长度不是数组类型的一部分。所以,让我们把它分成几个步骤
5
添加到该变量for
循环将旧数组的元素复制到新数组中的相应位置,但系统。arrayCopy
较短列表
和阵列列表
文档,了解人们在实践中是如何做到这一点的当你做这样的练习时,一定要先把它分解成单独的步骤。在编程时,将方法分解为只做一件事的单个方法 好的,我总结一下,给你一个更完整的答案: 首先,当您初始化一个数组时,您为它分配一个定义的/有限的内存块如果您想在Java中更改这样一个数组的长度,您需要初始化一个新数组。Java中没有对数组的自动重新初始化。其他语言可能会为您做类似的事情,但Java不会 其次,通过值传递数组初始化中的
x
,这意味着创建数组的功能接收值,但不接收内存地址。Java中的方法也是这样做的:您将值作为参数传递给它们,但它们不能直接看到变量,只要您在每个方法的本地环境中不显式引用它们。这就是为什么并没有接受参数的函数直接受到传递值的变量变化的影响
第三,如果您试图经常更改数组的大小,则应考虑使用包含所需功能的ArrayList
第四,如果您希望继续使用数组而不是其他内容,并且希望保留数组成员/值,则仍然需要将旧数组内容传递给新的初始化数组。这可以通过循环旧数组来实现。好的,我总结一下,给你一个更完整的答案: 首先,当您初始化一个数组时,您为它分配一个定义的/有限的内存块如果您想在Java中更改这样一个数组的长度,您需要初始化一个新数组。Java中没有对数组的自动重新初始化。其他语言可能会为您做类似的事情,但Java不会 其次,通过值传递数组初始化中的
x
,这意味着创建数组的功能接收值,但不接收内存地址。Java中的方法也是这样做的:您将值作为参数传递给它们,但它们不能直接看到变量,只要您在每个方法的本地环境中不显式引用它们。这就是为什么并没有接受参数的函数直接受到传递值的变量变化的影响
第三,如果您试图经常更改数组的大小,则应考虑使用包含所需功能的ArrayList