클래스 3

2021. 5. 14. 13:56·JAVA
public class RunLibrary {
	
	public RunLibrary() {
		boolean mRoop = true;
		String selected = null;
		String selected2 = null;
		int count = 0;
		
		int insert = 1;
		Book[] book = new Book[insert];				//Book이라는 클래스의 인스턴스를 담을 수 있는 배열을 생성
		Book[] book2 = null;
		while(mRoop) {
			System.out.print("도서입력을 진행하시겠습니까?(y/n)");
			selected = input();
			
			if(selected.equals("y")|| selected.equals("Y")) {		//5권의 책을 입력받아 저장한다.

				for(int i =0; i<book.length;i++,insert++,count++) {
					
					output((i+1)+"번째 도서정보 입력");
					output("제목 : ");
					String bookName = input();
					output("출판사 : ");
					String bookPublishing = input();
					output("출판일 : ");
					String bookDate = input();
					output("저자 : ");
					String bookWriter = input();
					output("");
					

					book2 = new Book[i+1];												//book2 = Book배열 1자리 선언														
					book2[i] = new Book(bookName,bookPublishing,bookDate,bookWriter);	//book2[0] = 입력한값 대입
					book = new Book[insert+1];											//book = Book[2] 선언
					book = book2;														//book2의 값을 book에 대입

					System.out.println("도서입력을 계속 진행하시겠습니까?(y/n)");
					selected2 = input();

위의 소스코드는 클래스 2에 포스팅 했었던 소스코드인데 클래스2에서는 미리 book에 배열의 갯수를 입력받아

입력하는 것이었고 지금 이 코드는 아직 완벽하게 완성한 것은 아니지만 책 입력을 무한으로 입력을 받다가

"도서입력을 계속 진행하시겠습니까?"에서 n를 입력하면 그때 입력받은 책들이 출력되는 그런 코드인데

확실히 미리 책들을 배열을 입력 받아서 그 값을 정해놓고 하는 것이 코드 짤때 덜 어려운 것 같다.

지금 이 코드는 배열의 크기를 정하지않고 책을 입력하는 만큼 배열의 크기를 재지정해서 결국 책을 수십만권

입력하면 수십만권 출력할 수 있는 그런 코드인데 이게 코드를 짤때 현재 배운 범위 내로는 정말....어렵다...

강사분과 같이 한번 만들어보고 있긴 한데 내가 집에서 코드 몇개를 줄이고 개선해서 왔으나 다시 보니까 더 줄일 수

있는 부분들이 몇가지 보여서 더 줄이고 나서 다시한번 봐야겠다.

'JAVA' 카테고리의 다른 글

for 문  (0) 2021.06.03
클래스 2(동적할당/정적할당)  (0) 2021.05.14
클래스 1(Class,object,instance)  (0) 2021.05.14
method  (0) 2021.05.14
'JAVA' 카테고리의 다른 글
  • for 문
  • 클래스 2(동적할당/정적할당)
  • 클래스 1(Class,object,instance)
  • method
BvrPark
BvrPark
코드 퍼즐과 개발 일상
  • BvrPark
    비버의 개발 일지
    BvrPark
  • 전체
    오늘
    어제
    • 분류 전체보기 (121)
      • JAVA (7)
        • 메서드 외울 것 (2)
      • 프로그래머스 (56)
        • 총 풀이 코드(깃허브) (1)
        • Level 1 (22)
        • Level 2 (33)
      • 백준 알고리즘(단계 별) (16)
        • 총 풀이 코드(깃허브) (1)
        • 1. 입출력과 사칙연산 (2)
        • 2. if 문 (2)
        • 3. for문 (1)
        • 4. while문 (2)
        • 5. 1차원 배열 (3)
        • 6. 함수 (1)
        • 7. 문자열 (1)
        • 8. 기본수학 1 (3)
      • 백준 알고리즘(solved.ac) (9)
        • 총 풀이 코드(깃허브) (1)
        • class2 (8)
      • LeetCode 문제 풀이 (4)
        • 총 풀이 코드(깃허브) (1)
        • Easy (3)
      • 코드업 알고리즘 (7)
      • git과 github사용법 (4)
      • html, css, javaScript (2)
      • 프로젝트 (11)
        • 순수 Java 프로젝트 (2)
        • 쇼핑몰 프로젝트 (2)
        • 게시판 프로젝트 (5)
        • 근태관리 프로젝트 (2)
      • 커피타임 (2)
        • 2023년 (2)
        • 2024년 (0)
  • 블로그 메뉴

    • 링크

      • 포트폴리오
      • 깃허브
    • 공지사항

    • 인기 글

    • 태그

    • 최근 댓글

    • 최근 글

    • Designed By정상우
    BvrPark
    클래스 3
    상단으로

    티스토리툴바