개발공부
ArrayList 출력시 주소값이 나올때
pumaclass
2024. 8. 23. 11:25
강의에서 분명 본것 같았고 실제로도 그런 문제를 겪은적이 있어서 해결까지 했는데도 뭐더라.. 뭐더라...
검색을 해도 속 시원하게 안나오길래 눈 빠지게 코드 찾다가 몸으로 학습해버렸다..
public void findBookTitle() {
System.out.println("조회 할 책의 이름을 입력해주세요.");
String bookName = sc.next();
for (Book book : bookList) {
if (bookName.equals(book.getTitle())) {
System.out.println(book + " 책이 목록에 있습니다.");
} else {
System.out.println(book + " 책을 찾을 수 없습니다.");
}
}
}
문제의 코드다
sout를 하게 되면 book@12312415 같은 문자들을 쏟아낸다.
당연하다.
객체의 속성을 정확하게 이야기 해주지 않으면 컴퓨터는 해당 객체의 주소값을 바라보기 떄문이다.
public void findBookTitle() {
System.out.println("조회 할 책의 이름을 입력해주세요.");
String bookName = sc.next();
for (Book book : bookList) {
if (bookName.equals(book.getTitle())) {
System.out.println(book.getTitle() + " 책이 목록에 있습니다.");
} else {
System.out.println(book.getTitle() + " 책을 찾을 수 없습니다.");
}
}
}
book.getTitle를 추가하여 해결했다.
나도 실력이 느는구만 하하하하하