我有以下Java
类,它将Person对象添加到现有人Array
:
public class PersonService{
protected int lastItemInPersonArray = 0;
private Person[] persons = new Person[100];
public void addPersonToPersonArray(Person personToAdd){
persons[lastItemInPersonArray++] = personToAdd;
}
}
我可以在这里正确添加1个对象,但是当我尝试2时,我收到以下错误:
java.lang.ArrayIndexOutOfBoundsException: 1
导致此问题的逻辑错误是什么?
答案 0 :(得分:1)
这适合我。
public class PersonService {
protected int lastItemInPersonArray = 0;
private Person[] persons = new Person[100];
public void addPersonToPersonArray(Person personToAdd) {
persons[lastItemInPersonArray++] = personToAdd;
}
public static void main(String[] args) {
PersonService ps = new PersonService();
ps.addPersonToPersonArray(new Person("P 1"));
ps.addPersonToPersonArray(new Person("P 2"));
ps.addPersonToPersonArray(new Person("P 3"));
System.out.println(ps.persons[0].nome);
System.out.println(ps.persons[1].nome);
System.out.println(ps.persons[2].nome);
}
}
class Person{
public Person(String nome) {
this.nome = nome;
}
String nome;
}