2017-03-11 1 views
2

기본적으로 사용자 입력을 크기 3의 배열에 저장하려고합니다. 주 (String [3] args)에 3을 넣을 때, 원하는대로 처리하지 않는 것 같습니다. 이 문제를 어떻게 해결합니까?커맨드 라인 인수가 저장 될 배열의 크기는 어떻게 설정합니까?

연습이 도움이된다면 : Exch4 클래스의 클래스 메소드 메인에 문자열을 포함하는 배열을 만들고 명령 행 인수로 채우는 코드를 입력하십시오.

감사합니다.

public class Ex4 { 
public static void main(String[] args) 
{ 
if (args.length == 1) 
{ 
    System.out.println(args[0]); 
} 

else if (args.length == 2 || args.length == 3) 
{ 
    System.out.println(args[0]); 
    System.out.println(args[1]); 
} 

else 
    System.out.println("Too many arguments"); 
} 
} 
+0

유일한 방법은 'args'의 길이를 검사하는 if 문을 사용하고 length> = 3 인 경우 실행을 계속하는 것입니다. 그렇지 않으면 오류가 인쇄됩니다. 세 가지 인수를 전달하는 경우에만 작동하는 주 방법을 사용할 수 없습니다. java는 이러한 오류를 처리하지 않지만 프로그램은 –

답변

0

main 메서드에 전달되는 배열의 크기를 제어 할 수 없습니다. 프로그램에 전달 된 인수의 크기가 자동으로 할당됩니다.

0

뒤로 가져옵니다.

JVM을 시작할 때 전달한 인수의 수에 의해 암시 적으로 해당 배열의 크기를 정의합니다.

런타임시 Java 코드 내에서 만 해당 배열의 실제 길이 인을 확인할 수 있습니다. 예를 들어 사용자에게 필요한 수의 인수와 그 의미에 대해 알려주는 오류 메시지를 제공합니다.