문제
학생 100명을 만들어 평균점수가 가장 높은 학생을 만들어주세요.
[student] 클래스는 학생을 정보를 생성할 클래스이다.
1. 학생의 이름은 랜덤이며 [name()] 메서드에서 first_name과 last_name을 합쳐서 리턴하여준다.
2. 점수는 랜덤이며 [ran()]메서드를 만들어 랜덤으로 각각의 점수를 부여해준다
3. 총합 점수는 [sums()]메서드를 이용하여 구해준다
4. 평균 점수인 avg는 sum / 3(과목수) 를 하여 구해준다
5. 다음으로는 String.format을 이용하여 학생들을 메인에서 찍어냈을때에
이름: ??? 국어: ???....과 같은 형식으로 나오게 해준다
[studentClass] 클래스는 학생들을 100명을 만들어 평균점수가 가장 높은 학생을 확인하는 클래스이다
1. ArrayList<students> student에 학생 100명을 담아준다 (타입은 students 클래스의 정보를 담을거기 때문에
students를 넣어줘야 한다)
2. student temp에 0번 학생의 정보를 넣고 반복문을 초기값 1부터 시작하여 검사하여준다.
temp = student.get(i).avg > temp.avg ? student.get(i) : temp; 를 말로 풀어보자면
temp 는 student 1번 학생의 평균점수가 temp(0번학생)의 평균점수가 더 크다면
student 1번 학생의 정보를 담아주고 아니라면 temp를 그대로 넣는다. 라는 삼항연산자이다.
평균점수가 큰 학생이 올때마다 temp의 정보가 바뀌는 것이다.
'공부 > Java 복습' 카테고리의 다른 글
Java DiscountDay (0) | 2021.09.23 |
---|---|
5DiceGame 자바 (0) | 2021.09.12 |
자바 학생 등급 출력하기 if문과 삼항연산자 이용 2가지 방법 (0) | 2021.08.25 |
Java 정규 표현식을 이용한 올바른 이메일 형식 찾기와 중복 제거 (0) | 2021.08.19 |
Java 차량 5부제 (0) | 2021.08.16 |