참고 : 사람들이 내게 말하려고하는 방법에 대한 코드를 편집했지만 여전히 원하는 결과를 얻지 못했습니다. 이제는 내 결과가 "[email protected]"이지만 여러 번 새로운 성과 이름을 입력합니다. 적어도 코드가 충돌을 일으키지 않고 코드를 만들었습니다.내가 만든 객체의 인스턴스를 사용하여 ArrayList를로드하는 방법
ArrayList를 사용하는 방법을 배우고 내가 만든 Object의 인스턴스로 Array 목록을로드해야합니다. 배열을 사용하여이 작업을 수행하는 방법을 알고 있지만이 할당에서는 ArrayList를 사용하여이 작업을 수행해야합니다. 다음은 내가해야 할 일의 예입니다.
// my "main" class
package examples.search;
import java.util.ArrayList;
import dmit104.Util;
public class MyPeople {
public static void main(String[] args) {
ArrayList<Person> people = new ArrayList<Person>();
Person tempPerson = new Person();
String firstName;
String lastName;
char choice = 'y';
int count = 1;
// fill my ArrayList
do {
people.add(tempPerson);
// I have a Util class that has a prompt method in it
firstName = Util.prompt("Enter First Name: ");
lastName = Util.prompt("Enter Last Name: ");
tempPerson.setFirstName(firstName);
tempPerson.setLastName(lastName);
count++;
choice = Util.prompt(
"Enter another person? [y or n]: ")
.toLowerCase().charAt(0);
} while (choice == 'y');
// display my list of people
for(int i = 0; i < people.size(); i += 1) {
System.out.print(people.get(i));
}
}
}
// my Person class which I am trying to build from
public class Person {
// instance variables
private String firstName;
private String lastName;
// default constructor
public Person() {
}
public String getFirstName(){
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
여러 가지 방법을 시도했지만 내 ArrayList가 채우지 않아도됩니다. 앞서 언급했듯이 배열에 문제가 없거나로드 된 생성자 메서드가 있더라도 그렇게 할 수는 없습니다. 나의 실제 임무에서 나는 정해진 방법으로 그것을하기로되어있다. 내가 사방에보고하고 내 문제에 대한 해결책을 찾을 금요일 인 것은 내 강사하지 않을 수
.
는
으로 정의됩니다. "기본 생성자"는 생성자가 아닙니다. 클래스의 생성자는 클래스와 동일한 이름으로 이름을 지정해야합니다. 이 경우 생성자의 이름은 Person()이어야합니다. 제쳐두고, 가변 클래스를 필요로하지 않는 한 항상 값 객체를 불변 유형의 인스턴스로 인스턴스화해야합니다. 귀하의 경우 lastname과 firstname은 final로 선언하고 Person() 생성자에서 초기 값으로 설정해야합니다. – scottb
배열에 대해 어떻게하는지 알고 있다고 말하지만,별로 다르지 않습니다. 'ArrayList' 사람들을 생성 한 후에, 당신은 그 안에 객체가 없다면, 그것을 생성하고리스트에 추가해야합니다. – madth3
Oh ya scottb, 내 수업에서 말하는 곳에 연락하십시오. Person이라고 말해야합니다. 내가 코드를 붙여 넣을 때 그것을 잊어 버렸다. 그리고 실제로 연락처 관리자를 만들고있어 사용자가 연락처를 추가 및 제거하고 변경할 수 있어야합니다 (이메일, 전화 번호 등이 변경된 경우) – leoJaxx