JAVA
ArrayList를 활용한 간단한 성적 산출 프로그램
본투비곰손
2022. 7. 21. 22:42
728x90
package ch24; // 서버클래스
import java.util.ArrayList;
public class Student {
int studentId;
String studentName; // 변수를 선언해주고
ArrayList<Subject> subjectList; // 배열도 변수로 선언한다 Subject는 배열형식으로 참조변수인 class 만들어준다.
Student(int studentId, String studentName){
this.studentId= studentId;
this.studentName= studentName; // Student를 생성해준다.
subjectList = new ArrayList<>(); // subjectList new생성자를 사용하여 생성한다.
}
public void addSubject(String name, int point) {
Subject subject = new Subject();
subject.setName(name);
subject.setScore(point);
subjectList.add(subject); //addSubject라는 매서드를 만들어준다.
}
public void showScoreInfo(){ // showScortInfo 매서드를 만들어준다.
int total = 0; // 합계를 구하기위한 total을 선언
for(Subject subject : subjectList) { // subjectList에서 하나씩 subject로 가져오겠다는 의미
total += subject.getScore(); // total에 subjectList에서 가져온subject의 score를 더해서 total에 넣어준다.
System.out.println(studentName + "학생의"+ subject.getName()+"과목의 성적은"+subject.getScore()+"입니다.");
}// 각각의 점수를 출력하겠다.
System.out.println(studentName + "학생의 총점은 " + total+"입니다."); // 총합을 구하겠다.
}
}
package ch24; //참조변수 클래스
public class Subject {
private String name; // 변수 선언
private int score;
public String getName() { // private 변수이기때문에 get과 set을 사용
return name;
}
public void setName(String name) {
this.name = name;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}
package ch24; //사용자 영역
public class StudentSubjectTest {
public static void main(String[] args) {
Student studentLee = new Student(1001,"lee"); //studentLee를 생성하고
studentLee.addSubject("국어",100); //매서드를 사용하여 그 값을 입력
studentLee.addSubject("영어", 80);
Student studentKim = new Student(1002,"kim"); //studentKim를 생성하고 그 값을 입력
studentKim.addSubject("국어",80);
studentKim.addSubject("수학", 70);
studentKim.addSubject("과학", 60);//매서드를 사용하여 그 값을 입력
studentLee.showScoreInfo(); //매서드를 사용하여 결과 출력
System.out.println ("==============");
studentKim.showScoreInfo();//매서드를 사용하여 결과 출력
}
}
728x90