일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- border-box
- #C++ has~a
- hyperledger transaction
- #자바상속#자바이즈어#is~a
- html charset
- #C++ 연산자함수오버로딩
- html plug-in
- #binary
- html id
- html code
- #CallByAddress
- 하이퍼레저패브릭
- git flow
- 토큰경제
- #JAVASCRIPT
- #bubbleSort
- #2차원배열
- #3차원배열
- html object
- html multimedia
- #성적관리프로그램
- #android activity
- html5 new tag
- html youtube
- #1차원배열
- docker example
- relative path
- #다차원포인터
- mac terminal command
- html video
- Today
- Total
A sentimental robot
Map을 이용한 성적관리 본문
import java.util.TreeMap;
import java.util.Iterator;
import java.util.Scanner;
import java.util.*;
public class Test02 {
public static void main(String[] args) {
Pro tt = new Pro();
Scanner sc = new Scanner(System.in);
do {
System.out.println("====성적처리관리프로그램입니다.====");
System.out.println("1.성적입력\n2.성적 전체 출력\n3.학번 검색 출력\n종료하시려면 -1을 입력");
int i;
i = sc.nextInt();
if (i == -1) {
break;
}
switch (i) {
case 1:
tt.add();
break;
case 2:
tt.printall();
break;
case 3:
tt.keyprint();
break;
default:
System.out.println("잘못된 입력입니다."); break;
}
} while (true);
}
}
class Pro {
Scanner sc = new Scanner(System.in);
private TreeMap1 tm = new TreeMap1();
public void add() {
int i;
do {
System.out.print("학번입력: ");
int key = sc.nextInt();
System.out.print("이름입력: ");
String name = sc.next();
System.out.print("국어입력: ");
int korea = sc.nextInt();
System.out.print("영어입력: ");
int eng = sc.nextInt();
System.out.print("수학입력: ");
int mat = sc.nextInt();
Infopro dto = new Infopro();
dto.setName(name);
dto.setKor(korea);
dto.setEng(eng);
dto.setMat(mat);
if (tm.containsKey(key)) {
System.out.println("이미 입력된 학번입니다.");
} else {
tm.add(key, dto);
}
System.out.println("계속 입력하시려면 1 입력");
i = sc.nextInt();
} while (i == 1);
}
public void printall() {
System.out.println("-----------------------------");
System.out.println("학번|이름|국어| 영어| 수학| 총점| 평균");
System.out.println("-----------------------------");
TreeMap<Integer, Infopro> t1 = tm.getTm();
Iterator<Integer> it = t1.keySet().iterator();
while (it.hasNext()) {
int key = it.next();
System.out.printf("%d %s %d %d %d %d %.1f \n"
, key
, t1.get(key).getName()
, t1.get(key).getkor()
, t1.get(key).geteng()
, t1.get(key).getmat()
, t1.get(key).getTotal()
, t1.get(key).getavg());
}
System.out.println("-----------------------------");
}
public void keyprint() {
System.out.print("학번 검색");
int key = sc.nextInt();
System.out.println("-----------------------------");
System.out.println("학번 이름 국어 영어 수학 총점 평균");
System.out.println("-----------------------------");
Infopro dto = tm.getTm(key);
if (dto == null) {
System.out.println("검색 결과 없습니다.");
} else {
System.out.printf("%d %s %d %d %d %d %.1f %n"
, key
, dto.getName()
, dto.getkor()
, dto.geteng()
, dto.getmat()
, dto.getTotal()
, dto.getavg());
}
System.out.println("-----------------------------");
}
}
class Infopro { // 자료 처리 전용 클래스
private String name;
private int korea;
private int eng;
private int math;
private int total;
private float avg;
public void setKor(int korea) {
this.korea = korea;
}
public int getkor() {
return korea;
}
public int geteng() {
return eng;
}
public void setEng(int eng) {
this.eng = eng;
}
public int getmat() {
return math;
}
public void setMat(int math) {
this.math = math;
}
public float getavg() {
return avg;
}
public void setAvg() {
this.avg = total / 3;
}
public int getTotal() {
return total;
}
public void setTotal() {
this.total = getkor() + geteng() + getmat();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString() {
return "이름 : " + name + "\t국어 : " + korea + "\t영어 : " + eng + "\t수학 : " + math + "\t총점 : " + total + "\t평균 : "+ avg + "\n";
}
}
class TreeMap1 {
private TreeMap<Integer, Infopro> tm= new TreeMap<Integer, Infopro>();
public void add(int key, Infopro dto) {
tm.put(key, dto);
}
public boolean containsKey(int key) {
return tm.containsKey(key);
}
public TreeMap<Integer, Infopro> getTm() {
return tm;
}
public Infopro getTm(int key) {
return tm.get(key);
}
}
'Java' 카테고리의 다른 글
Reference's reference (0) | 2017.12.29 |
---|---|
InetAddress Class (0) | 2017.12.29 |
Map (0) | 2017.12.29 |
Exception Handling (0) | 2017.12.29 |
Thread Synchronization (0) | 2017.12.29 |