gpt4 book ai didi

java - 为什么我的方法返回一个空值数组?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:55:01 27 4
gpt4 key购买 nike

我正在使用 foreach 循环迭代一个空数组,并用对象填充它。 “案例”是一个具有多个方法和属性的类。

我的代码是这样的:

public class Test {

private Case [] list = new Case[5];

public Case [] test(){
for(Case myCase : list){
myCase = new Case();
}

return list; //This list contains 5 nulls, but should contain five "Case" objects.
}

public static void main(String[] args){
Test myTest = new Test();
myTest.test();
}}

从我的方法返回的列表包含 5 个空值,而我希望它包含 5 个实例化的“Case”对象。我怀疑这可能是某种可见性问题,但我无法弄清楚。

最佳答案

for-each 循环中使用的变量只是对数组元素当前值的引用。分配给该变量不会影响存储在数组中的值。您需要像这样使用 for 循环:

for (int i = 0; i < list.length; i++) {
list[i] = new Case();
}

关于java - 为什么我的方法返回一个空值数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29190695/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com