개발 공부
도서관리메뉴 실습(3) 본문
아직은 봐도봐도 어렵다 ...
1-3.잡지만 조회하기(일반도서 제외)
초기상태 Run
초기상태 controller
1-3 학습
-
Run 클래스 - bc.onlySearchMagazine(); 메서드 호출 (임시)
-
controller 에서 list 배열에서 for 문을 돌려 book 객체의 요소를 가지고 있는 것들만 뽑아서 새로운 변수에 저장ArrayList<Book> blist = new ArrayList<>(); 새로운 Book 타입 객체배열형 변수 blist 생성
-
list의 크기만큼 돌면서 if( 인덱스 i 의 요소가 Magazine 클래스의 인스턴스인지 instanceof 연산자를 사용하여 확인)
-
뽑고싶은 데이터는 Magazine 이기 떄문에 list.get(i) instanceof Magazine 사용
-
list.get(i) 요소가 Magazine인경우 add 메서드 사용하여 값 저장 후 반환한다.
-
다시 Run 으로 돌아와 Book 객체배열형 변수 b3를 선언하고 for문을 돌려 출력한다.
2.도서 추가하기

2-1 아래 항목 순서대로 입력받고 리스트 추가 구현
입력받을 데이터 - bNo / ttitle / author / publisher /price / description /bkOrMaga /year /month
조건1. bkOrMaga변수에 입력받은 값이
TRUE일때 도서(book)에 추가하고 False 일때 Magazine으로 추가하기
조건.2 입력받은 데이터들 중 bNO(책 번호) 만 동일하지 않는다면 추가하고 동일 시 반환문 작성
초기상태 RUN
초기상태 controller
학습1.
1.if문 bkOrMaga 값이 true 일 때
입력받은 데이터들을 담을 Book객체 생성
Book nBook = new Book(bNo,title,author,publisher,price,description);
2. 인터페이스로 상속받은 controller 메서드 bc.searchBookBybNo(bNo); (임시) 호출
bNo 파라미터값으로 넘기기
3.controller 메서드 구현
새로운 book객체 생성 후 초기값을 null로 지정
향상된 for 문으로 리스트를 반복하면서 b라는 변수이름을 가진 Book 객체 생성과 동시에
리스트안에 bNo값이 전달받은 bNo의 값이 같다면 book에 b 를 담아서 반환하고
값이 없다면 null 담아서 반환

4.b1이라는 변수에 메서드호출 하여 받아온 값 저장 하기 (null 또는 book)
새로운 조건 문 작성 b1값이 null일 시 이전에 작성한 addBook 메서드 호출해서 1번에서 생성한 nBook을 추가 해주고 아닐 시 반환문 작성

'JAVA > 배운 후' 카테고리의 다른 글
클래스 (생성자) (0) | 2023.06.12 |
---|---|
클래스(필드) / ++ 변수 (0) | 2023.06.09 |
3.객체지향(캡슐화 / getter / setter) (0) | 2023.06.07 |
객체(object) (0) | 2023.06.07 |
2.객체지향 (추상화) (0) | 2023.06.05 |