main( ) 메소드의 매개값인 (String[] args) 의 용도
public static void main(String[] args) { . . . }
"java 클래스"로 프로그램을 실행하면 JVM은 길이가 0 인 String 배열을 먼저 생성하고,
main( ) 메소드를 호출할 때 매개값으로 전달한다.
만약 "java 클래스" 뒤에 공백으로 구분된 문자열 목록을 주고 실행하게 되면 (명령 프롬프트 상)
문자열 목록으로 구성된 String[ ]배열이 생성되고, main( ) 메소드를 호출할 때 매개값으로 전달된다.
main( ) 메소드는 String[ ] args 매개 변수를 통해서
커맨드 라인에서 입력된 데이터의 수(배열의 길이), 입력된 데이터(배열의 항목 값) 을 알 수 있다.
ex) 프로그램 실행 시 2개의 문자열을 주지 않으면 강제 종료, 2 개의 문자열 주어지면 int로 바꾸어 덧셈 수행
public class MainStringArrayArgument {
public static void main(String[] args) {
if(args.length != 2) { // 입력된 데이터 개수가 2개가 아닌 경우
System.out.println("프로그램 사용법");
System.out.println("Java MainStringArrayArgument num1 num2"); //사용법 출력 후
System.exit(0); // 강제 종료
}
String strNum1 = args[0];
String strNum2 = args[1];
int num1 = Integer.parseInt(strNum1); // 문자열 정수로 변환
int num2 = Integer.parseInt(strNum2);
int result = num1 + num2;
System.out.println(num1 + " + " + num2 + " = " + result);
}
}
* Integer.parseInt( ) 메소드는 주어진 문자열을 int 형(정수)로 변환한다.
변환이 불가한 문자열일 경우 NumberFormatException 실행 예외가 발생한다.
이클립스에서 프로그램 실행 시 매개값을 주어 실행하는 방법
[Run → Run Configurations..] 에서 Arguments 탭에서 매개값을 줄 수 있다.
위는 명령 프롬프트에서
java MainStringArrayArgument 10 20 |
으로 실행하는 것과 동일하다.
728x90
'Java 기본 문법 - 참조 서적 [이것이 자바다 - 한빛미디어] > 3. 참조 타입' 카테고리의 다른 글
7. Java 자바 참조 타입 - 객체를 참조하는 배열, 배열 복사, 향상된 for 문 (0) | 2020.05.07 |
---|---|
6. Java 자바 참조 타입 - 다차원 배열 (0) | 2020.05.07 |
4. Java 자바 참조 타입 - 배열 길이 (0) | 2020.05.06 |
3. Java 자바 참조 타입 - 배열 (0) | 2020.05.05 |
2. Java 자바 참조 타입 - String (문자열) (0) | 2020.04.30 |