我正在用 Java 制作一个简单的对象数组,我的部分代码如下
public class Student{
private String name;
private double score;
public Student(String name){
this.name=name;
this.score=score
}
public class Classroom{
private Student[] listStu;
private int sc;
public addStu(Student stu){
listStu[sc]=stu;
sc++;
}
public Student[] getClassroom(){
return listStu;
}
public int getNum(){
return sc;
}
public printList(){
for (int i=0;i<sc;i++){
System.out.pritnln(listStu[i].getName());
}
}
在主要课程中,我对此进行了编程:
Classroom c=new Classroom();
Student[] stuList;
int nStu;
Student s1=new Student("michael",3.0);
Student s2=new Student("larry",4.0);
c.addStu(s1);
c.addStu(s2);
stuList=c.getClassroom();
nStu=c.getNum();
问题是当我在主类中修改我的类 stuList 的对象时,例如:
stuList[0].setName("peter");
我看到当我调用我的 printList 方法时,我的数组中的数据也已被修改(在我的例子中,“michael”的名称被“peter”更改)。我的问题是如何将我的对象数组复制到主类的 stuList 中,以便该数组不会干扰我的原始数据?这个程序真的有必要吗,或者这种情况不太可能发生?
谢谢