Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
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
Archives
Today
Total
관리 메뉴

개발자

[java 5일차]파라미터 좀 더 이해해보기 본문

개발자/JAVA

[java 5일차]파라미터 좀 더 이해해보기

GoGo개발 2022. 8. 15. 16:58
학생정보 출력해보기

 

<Mian>

1
2
3
4
5
6
7
8
9
Scanner sc = new Scanner(System.in);
        
        System.out.println(">> 첫번째 학생의 성적정보를 입력하세요 <<");
        Sungjuk lssSj =new Sungjuk();
        lssSj.registerInfo(sc); //메소드 메인에서 sc만들어서 메소드로 넘겨준다 
        
        System.out.println("총점 : "+lssSj.total()+" , 평균 : "+lssSj.avg()+" , 학점 : "+lssSj.hakjum());
        lssSj.showInfo();
        
cs

 

1. registerInfo(sc)  메소드   // <main>에서 파라미터로 sc를 넘겨주고 <Sungjuk>클래스에서 sc를 파라미터로 받는다

                                          (정보를 스캐너로 입력받기 위해서 main에서 입력 sungjuk클래스에서 메소드를 실행)

 

메소드 및 출력 결과

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 void registerInfo(Scanner sc) { //입력기능
        
        int flag = 0;
        
        try {
            System.out.print("1. 학번 : ");
            hakbun = sc.nextLine(); // 필드값 hakbun이 null이니까 내가 입력해준 값으로 바꿔주기
            
            System.out.print("2. 성명 : ");
            name = sc.nextLine();
            
            System.out.print("3. 국어 : ");
            kor = Integer.parseInt(sc.nextLine()); //정수값으로 바꿔주기 integer.parseInt();\
            flag = 1;
            // int flag =1; 지역변수되니까 try 밖으로 빼주기
            
            System.out.print("4. 영어 : ");
            eng = Integer.parseInt(sc.nextLine()); 
            flag =2;
            
            
            System.out.print("5. 수학 : ");
            math = Integer.parseInt(sc.nextLine()); 
            //수학은 마지막과목이니까 굳이 flag 사용 X
 
        }catch(NumberFormatException e) {
            String subject = ""//지역변수안되게 if에서 빼주기
            
            if(flag == 0) {
                subject = "국어";
            }
            else if(flag == 1) {
                subject = "영어";
            }
            else if(flag == 2) {
                subject = "수학";
            }
            System.out.println(">>" +subject+ "과목은 정수로 입력해야 합니다!!<<\n");
        }
        
      /* 
        1. 학번 : 091234 엔터
        2. 성명 : 이순신엔터
        2. 국어 : 90 엔터
        4.영어 : 100엔터
        5.수학 : 80엔터
       */
    } //end of registerInfo(Scanner sc)--
cs

 

2. total, avg, hakjum 메소드

 

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
32
33
// 총점을 리턴시켜주는 메소드
    int total() {
        return kor+eng+math;
    } //end of int total()---------------
    
    // 평균을 리턴시켜주는 메소드
    double avg() {
        return total()/3.0;
    } // end of double avg()----------
    
    // 학점 리턴
    char hakjum() {
        double avg = avg();
        
        char result = ' '//공백
        if (avg >= 90) {
            result = 'A';
        }
        else if (avg >= 80) {
            result = 'B';
        }
        else if (avg >= 70) {
            result = 'C';
        }
        else if (avg >= 60) {
            result = 'D';
        }
        else  {
            result = 'F';
        }
        
        return result;
    } // end of char hakjum()------------
cs

 

3.showInfo() 메소드

 
1
2
3
4
5
6
7
8
9
10
11
12
13
void showInfo( ) { //출력기능
        System.out.println("\n====== 님 성적정보 ======\n"
                            +"1.학번 : " + hakbun + "\n"
                            +"2.성명 : " + name + "\n"
                            +"3.국어 : " + kor + "\n"
                            +"4.영어 : " + eng + "\n"
                            +"5.수학 : " + math + "\n"
                            +"6.총점 : " + total() + "\n"
                            +"7.평균 : " + avg() + "\n"
                            +"8.학점 : " + hakjum() + "\n");
        
    
    } //end of void showInfo()-
cs