gpt4 book ai didi

java - 为什么Java中数组的每个元素都会不断变化?

转载 作者:行者123 更新时间:2023-12-01 13:53:51 26 4
gpt4 key购买 nike

我想创建对象数组。会有很多用户对象,我想将这些用户对象保存在一个数组中。我有一个名为“数据”的类(class)。我尝试并搜索了很多,但找不到解决方案。当用户输入新名称时,所有对象的名称都会随着给定名称而更改,最后当我打印所有名称时,它会多次打印最后输入的名称。这是我的代码,它将对您理解有很大帮助:

testClass.java

public class testClass {

public static void main(String[] args) {
mainScreen();
}

public static void mainScreen(){
Scanner scan = new Scanner(System.in);
System.out.println("1) Add a new user:");
int choice = scan.nextInt();

switch(choice){
case 1:
System.out.println("Enter name:");
String name = scan.next();
Data.users[Data.count] = new Data(name);
mainScreen();
break;

case 2:
for(int i =0; i<=Data.count; i++){
System.out.println(Data.users[i].name);
}
break;
}
}
}

Data.java

public class Data {
public static Data[] users = new Data[600];
public static String name;
public static int count = 0;

public Data(String name) {
users[count].name = name;
count++;
}
}

我希望每个对象都有唯一的名称、ID、电话号码等。有人能给我建议吗?

最佳答案

因为 nameData 类的静态字段,如 countusers。从 name 字段中删除 static 修饰符。

关于java - 为什么Java中数组的每个元素都会不断变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19752145/

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