-
컬렉션 연습문제 (Student, Main)학교/JAVA 2023. 10. 27. 11:38
01. Student 클래스
package arrayList; public class Student { private String name; private String number; private int scoreJava; private int scoreWeb; private int scoreAndroid; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getNumber() { return number; } public void setNumber(String number) { this.number = number; } public int getScoreJava() { return scoreJava; } public void setScoreJava(int scoreJava) { this.scoreJava = scoreJava; } public int getScoreWeb() { return scoreWeb; } public void setScoreWeb(int scoreWeb) { this.scoreWeb = scoreWeb; } public int getScoreAndroid() { return scoreAndroid; } public void setScoreAndroid(int scoreAndroid) { this.scoreAndroid = scoreAndroid; } @Override public String toString() { return "Student [name=" + name + ", number=" + number + ", scoreJava=" + scoreJava + ", scoreWeb=" + scoreWeb + ", scoreAndroid=" + scoreAndroid + "]"; } public Student(String name, String number, int scoreJava, int scoreWeb, int scoreAndroid) { this.name = name; this.number = number; this.scoreJava = scoreJava; this.scoreWeb = scoreWeb; this.scoreAndroid = scoreAndroid; } }
02. Main 클래스
1) 다음과 같이 메뉴 출력
2) [4] 종료 선택 시 프로그램 종료
3) Student 객체 담을 수 있는 ArrayList 생성
4) [1]성적입력 선택 시 이름, 학번, 성적 입력받아 ArrayList에 추가
5) [2] 전체조회 선택 시 다음과 같이 출력
6) 단, 등록되어있는 정보 없을 시에는 '조회할 데이터가 없습니다.'
7) [4]학생검색 선택 시 검색할 이름 입력받아 동일한 이름의 정보 찾아 다음과 같이 출력
8) 단, 검색한 이름이 없을 경우 '검색한 이름의 정보가 없습니다.'
package arrayList; import java.util.ArrayList; import java.util.Scanner; public class StudentMain { public static void main(String[] args) { Scanner sc = new Scanner(System.in); ArrayList<Student> list = new ArrayList<>(); while(true) { System.out.println("[1]성적입력 [2]전체조회 [3]학생검색 [4]프로그램 종료"); int menu = sc.nextInt(); if(menu==4) { System.out.println("프로그램이 종료되었습니다..."); break; } if(menu==1) { System.out.println("이름 : "); String name = sc.next(); System.out.println("학번 : "); String number = sc.next(); System.out.println("Java 점수 : "); int javaScore = sc.nextInt(); System.out.println("Web 점수 : "); int webScore = sc.nextInt(); System.out.println("Android 점수 : "); int androidScore = sc.nextInt(); Student s = new Student(name, number, javaScore, webScore, androidScore); list.add(s); } if(menu==2) { if(list.isEmpty()) { System.out.println("조회 할 데이터가 없습니다."); }else { System.out.print("이름\t"); System.out.print("학번\t"); System.out.print("Java\t"); System.out.print("Android\t"); System.out.print("Web\n"); for(Student s : list) { System.out.print(s.getName()+"\t"); System.out.print(s.getNumber()+"\t"); System.out.print(s.getScoreJava()+"\t"); System.out.print(s.getScoreAndroid()+"\t"); System.out.print(s.getScoreWeb()+"\n"); } } } if(menu==3) { System.out.println("검색할 이름 입력: "); String name = sc.next(); boolean found = false; for(Student s : list) { if(s.getName().equals(name)) { found = true; System.out.print(s.getName()+"\t"); System.out.print(s.getNumber()+"\t"); System.out.print(s.getScoreJava()+"\t"); System.out.print(s.getScoreAndroid()+"\t"); System.out.print(s.getScoreWeb()+"\n"); double average = (s.getScoreJava() + s.getScoreAndroid() + s.getScoreWeb()) / 3.0; System.out.println("평균점수: " + average); String grade; if(average <= 50) { grade = "C"; }else if(average <= 70) { grade = "B"; }else { grade = "A"; } System.out.println("학점: " + grade); break; } } if(!found) { System.out.println("검색한 이름의 정보가 없습니다."); break; } } } } }
'학교 > JAVA' 카테고리의 다른 글
모바일 웹 서비스 구현을 위한 JSP 웹 프로그래밍 연습문제_06 JSP (0) 2023.12.13 모바일 웹 서비스를 위한 JSP 웹 프로그래밍 연습문제_05장 서블릿 (0) 2023.12.13 컬렉션(ArrayList<String>, Iterator) 연습문제 (ArrayEx02) (0) 2023.10.26 컬렉션(ArrayList<String>) 연습문제 (ArrayEx01) (0) 2023.10.26 객체와 객체배열 연습문제 (Phone, PhoneManager) (1) 2023.10.26