자바 메소드 출력에 관해 질문 드립니다.
본문
import java.util.Scanner;
class Score{
String name;
int math;
int eng;
int kor;
int sum;
String result;
void print(String name, int math, int eng, int kor) {
System.out.println(name + "의 수학 점수는 " +math+ "이며, 영어 점수는 "+ eng +"이고, 국어 점수는 "+kor+"입니다.");
}
void print(String name, int sum) {
System.out.println(name + "의 평균 점수는" + sum + "입니다.");
}
}
public class real tread {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
Score myScore = new Score();
System.out.println("첫 번째 학생의 성적입니다.");
System.out.println("=====================");
System.out.println("이름을 입력하시오: ");
myScore.name = sc.next();
System.out.println("수학 성적을 입력하시오: ");
myScore.math = sc.nextInt();
System.out.println("영어 성적을 입력하시오: ");
myScore.eng = sc.nextInt();
System.out.println("국어 성적을 입력하시오: ");
myScore.kor = sc.nextInt();
myScore.sum = (myScore.math+myScore.eng+myScore.kor)/3;
Score my1Score = new Score();
System.out.println("두 번째 학생의 성적입니다.");
System.out.println("=====================");
System.out.println("이름을 입력하시오: ");
my1Score.name = sc.next();
System.out.println("수학 성적을 입력하시오: ");
my1Score.math = sc.nextInt();
System.out.println("영어 성적을 입력하시오: ");
my1Score.eng = sc.nextInt();
System.out.println("국어 성적을 입력하시오: ");
my1Score.kor = sc.nextInt();
my1Score.sum = (my1Score.math+my1Score.eng+my1Score.kor)/3;
Score my2Score = new Score();
System.out.println("세 번째 학생의 성적입니다.");
System.out.println("=====================");
System.out.println("이름을 입력하시오: ");
my2Score.name = sc.next();
System.out.println("수학 성적을 입력하시오: ");
my2Score.math = sc.nextInt();
System.out.println("영어 성적을 입력하시오: ");
my2Score.eng = sc.nextInt();
System.out.println("국어 성적을 입력하시오: ");
my2Score.kor = sc.nextInt();
my2Score.sum = (my2Score.math+my2Score.eng+my2Score.kor)/3;
System.out.println(" 성적부에서 탐색하고자 하는 학생의 이름을 입력하시오 ::");
myScore.result = sc.next();
my1Score.result = sc.next();
my2Score.result = sc.next();
if (myScore.result.equals(myScore.name)) {
myScore.print(myScore.name, myScore.math, myScore.eng, myScore.kor);
myScore.print(myScore.name, myScore.sum);
}
else if (myScore.result.equals(my1Score.name)) {
my1Score.print(my1Score.name, my1Score.math, my1Score.eng, myScore.kor);
my1Score.print(my1Score.name, my1Score.sum);
}
else if (myScore.result.equals(my2Score.name)) {
my2Score.print(my2Score.name, my2Score.math, my2Score.eng, my2Score.kor);
my2Score.print(my2Score.name, my2Score.sum);
}
else {
System.out.println("동일한 이름이 존재하지 않습니다. 다시 입력해 주세요!");
}
}
}
제가 출력하고자 하는 것은 세 학생의 이름 및 성적을 입력받고, 그 입력받은 것들 중 하나를 내뱉는 문장입니다. 그러나 위의 코드를 실행하면 성적부에서 탐색하고자 하는 학생의 이름을 입력하시오 :만 산출이 되고 출력문이 끝나버립니다. 어딜 수정해야 제가 원하는 답이 나올까요