我想在 Visit
上执行 getName()
方法,该方法包含 name 的返回方法,但打印出“null”
public void getAllVisits() {
Visit v = new Visit();
for (int i = 0; i < myVisits.size(); i++) {
System.out.println(v.getName());
System.out.println(v.getAmount());
System.out.println(v.getDate());
}
}
这是 Visit 类中的代码
public Visit(){}
public Visit(double visitAmount, String Name)
{
amount = visitAmount;
doctorName = Name;
}
public String getName()
{
return doctorName;
}
最佳答案
您没有正确初始化您的 Visit 对象,您应该调用:
Visit v = new Visit(100, "Visit Name");
此外,正如有人指出的,循环不会执行任何操作,因为它总是调用 v 的同一个实例。您可能想要的是这样的:
List<Visit> myVisits;
public void someOtherMethod() {
myVisits = new ArrayList<Visit>();
Visit visit1 = new Visit(100, "Visit Name");
myVisits.add(visit1);
}
public void getAllVisits() {
for (Visit visit : myVisits) {
System.out.println(visit.getName());
System.out.println(visit.getAmount());
System.out.println(visit.getDate());
}
}
关于java - 为什么当我使用引用从另一个类调用一个类的 get 方法时它为 null,即它打印出 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32210359/