개발공부

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를 추가하여 해결했다.

나도 실력이 느는구만 하하하하하

'개발공부' 카테고리의 다른 글

나머지가 1이 되는 수 찾기(자바)  (0) 2024.08.27
백준 8393번 문제 대체 뭐가 문제인가  (0) 2024.08.25
1대N의 관계  (0) 2024.08.22
엔티티의 연관 관계  (0) 2024.08.20
JWT란 무엇일까?  (0) 2024.08.19