Java 添加到用户声明的数组引发错误
调用add借款人方法时,会引发一个错误: java.lang.NullPointerException 在Membership.add借款人处(Membership.java:24) 很抱歉,如果这是一个非常愚蠢的问题,我只是被它卡住了,我到处寻找解决方案,据我所知,这就是我所实现的,但我仍然在做一些错误的事情。非常感谢您的帮助Java 添加到用户声明的数组引发错误,java,arrays,bluej,user-defined,Java,Arrays,Bluej,User Defined,调用add借款人方法时,会引发一个错误: java.lang.NullPointerException 在Membership.add借款人处(Membership.java:24) 很抱歉,如果这是一个非常愚蠢的问题,我只是被它卡住了,我到处寻找解决方案,据我所知,这就是我所实现的,但我仍然在做一些错误的事情。非常感谢您的帮助 /** * Write a description of class Membership here. * * @author (your name) * @v
/**
* Write a description of class Membership here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Membership
{
// instance variables - replace the example below with your own
private Borrower[] borrowers;
private int currentIndex;
/**
* Constructor for objects of class Membership
*/
public Membership(int maxNoOfBorrowers)
{
Borrower[] borrowers = new Borrower[maxNoOfBorrowers];
currentIndex = 0;
}
public void addBorrower(Borrower borrower)
{
if (currentIndex < borrowers.length)
{
borrowers[currentIndex] = borrower;
currentIndex++;
}
else
System.out.println("Membership full. Could not add borrower!");
}
public int getCapacity()
{
return borrowers.length;
}
public int getNumberOfBorrowers()
{
return currentIndex;
}
public void printAllBorrowers()
{
for (Borrower borrower:borrowers)
{
borrower.printBorrowerDetails();
}
}
}
此行<代码>借款人[]借款人=新借款人[maxNoOfBorrowers]代码>需要更改为
this.bookers=新借款人[maxNoOfBorrowers]代码>在构造函数中问题在于在构造函数中执行以下操作:
public Membership(int maxNoOfBorrowers)
{
Borrower[] borrowers = new Borrower[maxNoOfBorrowers];
currentIndex = 0;
}
public Membership(int maxNoOfBorrowers)
{
borrowers = new Borrower[maxNoOfBorrowers];
currentIndex = 0;
}
您所做的是初始化一个名为借款人的新变量,而不是该类的成员变量
你应具备以下条件:
public Membership(int maxNoOfBorrowers)
{
Borrower[] borrowers = new Borrower[maxNoOfBorrowers];
currentIndex = 0;
}
public Membership(int maxNoOfBorrowers)
{
borrowers = new Borrower[maxNoOfBorrowers];
currentIndex = 0;
}
哦,太谢谢你了,我就知道这很愚蠢。对不起,浪费了你的时间:)永远不要浪费时间,祝你好运,如果你不知道的话,这是一个棘手的问题。