import java.util.*;
public class Test {
Studen[] stu = new Studen[100];
Scanner sc = new Scanner(System.in);
String obj[] = {"a", "b", "c", "d"};
int s[] = new int[4];
int i = 0;
Test(){
input();
}
void input(){
String inf;
while(true){
System.out.print("문자를 입력 : ");
inf = sc.nextLine();
if(inf.equals("i")){
for(int j =0 ; j< obj.length; j++){
System.out.print(obj[j]+"과목 점수 :");
s[j] = sc.nextInt();sc.nextLine();
if(s[j] >100 || s[j]<0){
System.out.println("성적재입력!");
j--;
}
stu[i] = new Studen(s);
i++;
}
}
else if(inf.equals("c")){
for(int j = 0 ; j<i ; j++){
System.out.println(j+1+"번째 학생");
System.out.println(stu[j].print());
}
}
else{
break;
}
}
}
public static void main(String[] args) {
new Test();
}
}
--------------------------------------------------------------------------------------------
public class Studen {
String obj[] = {"a", "b", "c", "d"};
int sco[];
Studen(int[] sco){
this.sco = sco;
}
public String print(){
return (
"a : "+ sco[0] + ", b : " +sco[1] + ", c : " + sco[2] + ", d : "+ sco[3]
);
}
}
-----------------------------------------------------------------------------------------------
왜 값을 다르게 넣었는데 같게 나올까요? ㅠ
한참 찾았넹..
Test 클래스의 int s[] = new int[4]; 를 int s[]로 바꾸고 if (inf.equals("i")) {} 첫줄에 s = new int[4]; 집어넣구 if문 에 들어가 있는 stu[i] = new Studen(s); i++; 를 if문 밖으로 빼