문제) 성적 처리 -> ArrayList 컬렉션, RecordDTO 클래스 이용. 메뉴 구성 추가

여러명의 이름, 국어, 영어, 수학 입력 받아서 총점, 평균 계산해서 출력. 출력시 이름 오름차순 정렬해서 출력.


실행 예)

======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 이름 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->1


1번 학생 성적 입력(이름 국어 영어 수학)?park 80 75 60

2번 학생 성적 입력(이름 국어 영어 수학)?hong 100 90 80

3번 학생 성적 입력(이름 국어 영어 수학)?kim 80 85 80

4번 학생 성적 입력(이름 국어 영어 수학)?-1


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 이름 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->2


 이름   국어  영어  수학  총점  평균

 hong    100   90    80    XXX  XXX.X

 kim      80   85    80    XXX  XXX.X

 park     80   75    60    XXX  XXX.X



======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 이름 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->3

검색하려는 이름?kim

 이름   국어  영어  수학  총점  평균

 kim      80   85    80    XXX  XXX.X



======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 이름 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->3

검색하려는 이름?choi

검색 결과가 없습니다.


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 이름 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->-1


프로그램이 종료되었습니다.


//ScoreDTO.java

//Process.java

//Class70.java








이름과 전화번호를 저장할 수 있는 자료형 만들기.

MemberDTO 클래스, ArrayList 컬렉션


출력시 이름 오름차순 출력


=======  회원 관리  ========

1. 회원 입력

2. 회원 전체 출력

3. 이름 검색 출력


실행 예)

이름 전화번호(1)?홍길동 010-123-1234

이름 전화번호(2)?김길동 010-222-3333


--------------------

이름   전화번호

--------------------

홍길동 010-123-1234

김길동 010-222-3333

--------------------


//문제임 알아서 풀어보세용~ㅋㅋ










ScoreDAO, ScoreDTO 클래스. 

ArrayList 컬렉션


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 이름 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->3



//ScoreDTO.java -> 자료 처리 전용 클래스

//ScoreDAO.java -> 데이터 엑세스 전용 클래스

//Process2.java -> 메뉴 액션 처리 전용 클래스

//Class72.java -> main() 메소드 추가. 메뉴 출력








Map 인터페이스를 구현한 TreeMap 클래스


1. 컬렉션 종류

◆ Collection 인터페이스

- Value의 집합체

- 특정 Value를 얻기 위해서는 검색 과정 필요.


◆ Map 인터페이스

- Key, Value의 집합체.

- Key을 제시하면 Value를 얻을 수 있는 구조.


**개별정리내용**

TreeMap에서 자동인덱스가 아닌 키값 구분 인덱스 이기때문에 단일 출력에는 편리하나,

전체출력을 할 경우 while 문을 통해 출력해야 하며, 이때 , Iterator클래스를 사용해야 함.

ex)

Iterator<Integer> it = tm.keySet().iterator(); //Integer > 키자료형

while(it.hasNext()) {

int key = it.next();

System.out.printf("%d %s %d %d %d %d %.1f %n"

, key

, tm.get(key).getName()

, tm.get(key).getKor()

, tm.get(key).getEng()

, tm.get(key).getMat()

, tm.get(key).getTotal()

, tm.get(key).getAve());

}





//Class73.java ->TreeMap에서의 선언, 자료 입력, 출력.







문제) 성적 처리 -> TreeMap 컬렉션, ScoreDTO 클래스, ScoreDAO 클래스 이용,

메뉴 구성 추가. 


여러명의 학번, 이름, 국어, 영어, 수학 입력 받아서 총점, 평균 계산해서 출력. 

학번은 Key로 사용하고, 이름~평균은 ScoreDTO 객체로 만들어서 Value로 사용한다.

실행 예)

======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 학번 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->1


학생 성적 입력(학번 이름 국어 영어 수학)?1 park 80 75 60

학생 성적 입력(학번 이름 국어 영어 수학)?2 hong 100 90 80

학생 성적 입력(학번 이름 국어 영어 수학)?3 kim 80 85 80

학생 성적 입력(학번 이름 국어 영어 수학)?-1


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 학번 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->1


학생 성적 입력(학번 이름 국어 영어 수학)?3 choi 80 80 80

이미 입력된 학번입니다.

학생 성적 입력(학번 이름 국어 영어 수학)?4 choi 80 80 80

학생 성적 입력(학번 이름 국어 영어 수학)?-1


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 학번 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->2


학번 이름   국어  영어  수학  총점  평균

  1  hong    100   90    80    XXX  XXX.X

  2  kim      80   85    80    XXX  XXX.X

  3  park     80   75    60    XXX  XXX.X

  4  choi     80   80    80    XXX  XXX.X


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 학번 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->3

검색하려는 학번?2

학번 이름   국어  영어  수학  총점  평균

  2  kim      80   85    80    XXX  XXX.X


======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 학번 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->3

검색하려는 학번?5

검색 결과가 없습니다.



======== 성적 처리 ==============

1. 성적 입력

2. 성적 전체 출력

3. 학번 검색 출력

4. 성적 수정

5. 성적 삭제

선택(1~5, -1 종료)->-1


프로그램이 종료되었습니다.




//ScoreDTO.java -> 동일(학번은 TreeMap의 키로만 사용되므로 DTO에는 학번이 없다)

//ScoreDAO3.java -> 변경(자료저장공간이 ArrayList 에서 TreeMap으로 변경되므로)

//Process3.java -> 변경(자료저장공간이 ArrayList 에서 TreeMap으로 변경되므로 관련 액션 수정)

//Class74.java -> 변경(이름 검색 출력을 학번 검색 출력으로 수정





JAVA SE 과목 끝.


예외처리 배우지 않았으므로 ORACLE 과목 종료되면 배워야함.


WRITTEN BY
빨강꼬마

,