에서 문자열은 "-add"후 모든 정수를 추가합니다. 그러나이 프로그램에서 "-add"다음에 오는 것이 정수가 아닌 경우 "인수 유형 불일치"를 인쇄한다고 가정합니다.
문자열을 정수로 검색하는이 방법이 있습니다. 정수가 아닌 다른 값을 찾으면 false를 반환합니다.
public static boolean isInteger(String s) {
try {
int num = Integer.parseInt(s);
return true;
} catch (Exception e) {}
return false;
}
이제이 메서드에서는 isInteger 메서드를 사용하여 첫 번째 for 루프의 String을 봅니다.
private static void add(String[] args) {
for (int j = 1; j < args.length; j++) {
if (isInteger(args[j]) == false)
System.out.println("Argument type mismatch");
}
if (args.length == 1)
System.out.println("Argument count mismatch");
else {
int result = 0;
for (int i = 1; i < args.length; i++) {
result += Integer.parseInt(args[i]);
}
System.out.println(result);
}
}
첫 번째 for 루프를 단독으로 실행하면 "인수 유형 불일치"가 발생합니다. 그러나 나는 명령
자바 클래스 그것이 java.lang.NumberFormatException의 뒤에 "인수 유형 불일치를"생산
-add 고양이 전체 메소드를 실행하고 입력 할 때 : 입력 문자열을 : "cat" 라인의 오류 결과 + = Integer.parseInt (args [i]);
어떻게이 오류를 해결할 수 있습니까?
추가'수익을,''에서 System.out.println ("인수 유형 불일치") 후, '그것을 해결해야한다. – Voicu
-add와 cat 인 두 개의 인수를 클래스에 전달하기 때문입니다. Integer.parseInt가이 에러를 throw합니다. – StackFlowed