java - 为什么当我使用引用从另一个类调用一个类的 get 方法时它为 null,即它打印出 null

标签 java nullpointerexception

我想在 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/

相关文章:

java - Android - LayoutInflater - 无法使 TextView 保持在另一个 TextView 下方

java - java合并xml文件

java - 什么是NullPointerException,我该如何解决?

java - 为什么我在 GridView 的 onMeasure 中得到空指针

java - 无法创建记录器 Tomcat 错误

java - 如何将从联系人中选择的电话号码存储到字符串中?

java - 自动更改为新日期以在android中显示日期

android - ViewFlipper导致空指针异常

java - 什么是NullPointerException,我该如何解决?

c - 谁在堆栈上的结构中初始化 char 指针