5.1.10 main() 메서드의 입력매개변수

jh·2022년 1월 24일
0

Do it! 자바 완전 정복

목록 보기
43/70

그동안의 예제를 작성하면서 기계적으로 작성했던 main() 메서드를 살펴보면 다음과 같이 배열이 입력매개변수의 형태를 띤다는 것을 알 수 있다.

public static void main(String[] args){
} // String[] : 여러 개의 String 객체를 묶어 저장하는 문자열 배열

즉 자바 코드를 실행하면 자바 가상 머신은 가장 먼저 main() 메서드를 실행하는데, 이때 개발자는 main()메서드를 실행하는 데 필요한 자료를 배열 타입으로 넘겨줄 수 있다. 그동안은 한 번도 데이터를 넘겨 준 적이 없으므로 아무런 데이터도 전달되지 않았을 것이다.

Run configurations 메뉴 클릭
그런 다음 Arguments에 매개 변숫값으로 안녕하세요 3 5.8을 입력한 후 Run 버튼을 클릭한다.
입력매개변수의 각 원소는 공백 문자로 구분되며 모든 원소는 입력매개변수가 String[]이므로 문자열(String)로 인식된다. 따라서 앞에서 입력한 입력매개변수에 따라 배열 args에는 다음과 같이 값이 전달된다.

        String a = args[0];
        String b = args[1];
        String c = args[2];

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        System.out.println(b + 1);
        System.out.println(c + 1);

        int d = Integer.parseInt(b);
        double e = Double.parseDouble(c);
        System.out.println(d + 1);
        System.out.println(e + 1);

결과


+) 타입 변환 메서드

문자열을 정수 또는 실수로 바꾸거나 정수 또는 실수를 문자열로 변환하는 데는 다음과 같은 메서드를 사용할 수 있다.

문자열 -> 정수 : Integer.parseInt(문자열)
문자열 -> 실수 : Double.parseDouble(문자열)
정수 -> 문자열 : String.valueOf(정수)
실수 -> 문자열 : String.valueOf(실수)


다음은 main() 메서드의 입력매개변수로 'abc 13 123 a'를 전달했을 때 입력매개변수로 전달된 String[] 타입의 참조 변수 args의 값을 읽는 예제다.

        // args 배열의 길이 구하기
        System.out.println(args.length);
        System.out.println();

        // 입력매개변수 출력 1
        for(int i = 0; i < args.length; i++) {
            System.out.println(args[i]);
        }
        System.out.println();

        //입력매개변수 출력 2
        for(String s : args) {
            System.out.println(s);
        }
        System.out.println();

결과

profile
코딩 공부 중...

0개의 댓글