일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 객체지향
- 자바문제
- ddit
- Oracle
- Android
- pyqt
- JDBC
- 생활코딩
- Mac
- python
- spring
- crud
- FastAPI
- jsp
- html
- API
- 자바
- 이클립스
- 대덕인재개발원
- servlet
- 단축키
- 맥
- 배열
- nodejs
- Error
- Java
- 컬렉션프레임워크
- ibatis
- Homebrew
- 반복문
Archives
- Today
- Total
romworld
컬렉션 프레임워크 문제 (List, Map) 본문
김범수, 나얼, 박효신, 이수, 신용재, 하현우 총 여섯명의
국어/수학/영어/과학/코딩 점수를 각 0~100까지의 랜덤 값으로
입력하고, 학생별 평균을 구하세요.
(List와 Map을 이용)
===================== 평균점수 =====================
학생명 국어 수학 영어 과학 코딩 평균
김범수 87 68 20 87 87 00
나얼 87 51 56 15 87 00
박효신 87 68 87 89 77 00
이수 87 34 56 47 87 00
신용재 57 68 86 87 68 00
하현우 87 18 56 87 87 00
====================================================
package h_collection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
public class ListScoreBook {
public static void main(String[] args) {
int sum;
String[] names = {"김범수", "나얼", "박효신", "이수", "신용재", "하현우"}; //6개
String[] types = {"학생명", "국어", "수학", "영어", "과학", "코딩", "평균"}; //7개
List<Map<String,Object>> userList = new ArrayList<>();
for(int i = 0; i < 6; i++) {
Map<String,Object> user = new HashMap<>();
user.put(types[0], names[i]);
sum = 0;
for(int j = 1; j <types.length -1; j++) {
user.put(types[j], new Random().nextInt(101));
sum += (int)user.get(types[j]);
}
double avg = (Math.round(((double)sum / types.length -2) *100)/100.0);
user.put(types[types.length-1], avg);
userList.add(user);
}
System.out.println(userList);
System.out.println("===================평균점수====================");
for(int i = 0; i < types.length ; i++) {
System.out.print(types[i]+ "\t");
}
System.out.println();
for(int i = 0; i < userList.size(); i++) {
System.out.print(userList.get(i).get("학생명") + "\t");
System.out.print(userList.get(i).get("국어") + "\t");
System.out.print(userList.get(i).get("수학") + "\t");
System.out.print(userList.get(i).get("영어") + "\t");
System.out.print(userList.get(i).get("과학") + "\t");
System.out.print(userList.get(i).get("코딩") + "\t");
System.out.print(userList.get(i).get("평균") + "\t");
System.out.println();
}
'JAVA > 문제풀이' 카테고리의 다른 글
컬렉션 프레임워크 연습문제2(로또 프로그램) (0) | 2022.10.28 |
---|---|
컬랙션 프레임워크 연습 문제 1(베이스볼게임) (0) | 2022.10.28 |
Chapter 07 상속 문제 풀이 ( Human, 도형클래스, Bank) (0) | 2022.10.10 |
Chepter 06. 객체지향 프로그래밍 클래스 문제 (Circle, Time, Plane, NewCar) (1) | 2022.09.23 |
배열 middleTest (1) | 2022.09.23 |
Comments