我有两个类:persoana(person)和persoanalist(用于存储所有persoana对象)
persoana.java文件:
public class Persoana {
private String nume;
private String prenume;
private ContCurent contCurent;
private ContDepozit contDepozit;
public Persoana(String n,String pr,ContCurent cC){//are doar cont curent
nume=n;
prenume =pr;
contCurent=cC;
}
public Persoana(String n,String pr,ContDepozit cD){//are doar cont depozit
nume=n;
prenume =pr;
contDepozit=cD;
}
public Persoana(String n,String pr,ContCurent cC,ContDepozit cD){//are atat cont curent cat si depozit
nume=n;
prenume =pr;
contCurent =cC;
contDepozit=cD;
}
public String getNume(){
return nume;
}
public String getPrenume(){
return prenume;
}
public void afisare(){
System.out.println(nume);
System.out.println(prenume);
System.out.println(contDepozit.numarCard);
System.out.println(contDepozit.pin);
System.out.println(contDepozit.sold);
contDepozit.getDataScadenta();
}
public int getPin(){
return contCurent.pin;
}
persoanalist文件:
公共阶层人格主义者{
Persoana[] perslist = new Persoana[20];
int i=1;
public void adauga(Persoana a)
{
perslist[i]=a;
i++;
}
public void afisare(){
for(int j=1;j<=perslist.length;j++)
{
perslist[j].afisare();
}
}
public boolean cautare(String a,int b){
boolean check=true;
for(int j=1;j<=perslist.length;j++)
{
if(perslist[j].getNume().equals(a) && perslist[j].getPin()==b)
check= true;
else
check= false;
}
return check;
}
public int marime(){
return perslist.length;
}
}
每个人都有名字和别针。方法“cautare”将在数组中搜索,如果存在pin和name,则返回true(类似于login);
我有一个错误:java.lang.nullpointerexception有人能帮我吗?拜托。。
ps:perslist[j].getnume()-也不是null..getpin()
1条答案
按热度按时间5anewei61#
您将在中的一个循环中获得nullpointerexception(npe)
PersoanaList
班级。例如:因为除非你已经完全填满了你的
perslist
变量,则会命中一个为null的数组项,当.getName()
被称为。不过,在修复该问题之后,可能会遇到arrayindexoutofboundsexception,因为数组索引使用1到n。数组从0开始,转到n-1。因此,对于20个数组项,可以将它们引用为0到19。