백준 10951번 A + B - 4
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
문제 자체는 간단하지만 전 문제들과 달리 테스트 케이스가 얼마나 들어올 지 모른다. 파이썬으로 이 문제를 풀었을 때에는 인풋이 몇개인 지 크게 상관이 없어서 금방 풀었지만 자바는 다르다.(...) 파이썬에서는 try-except를 이용해 풀어서 자바에서도 비슷한 메소드가 있는 지 검색한 결과 try-catch라는 메소드를 찾았다. Try 구문은 같은 방식으로 쓰지만 catch에서는 에러를 잡아준다. catch(Exception e) {}
이런 식으로. 에러를 잡은 후 아무것도 안 하고 싶다면 break 말고 중괄호 안을 비워두자. 하지만 백준에서는 틀렸다고 나왔다.. 검색 결과 스캐너는 엔터나 스페이스도 인풋으로 받아드리기 때문이라고 한다. 그래서 새로 알아 낸 메소드 hasNextInt(). 스캐너의 메소드로 다음에 들어올 정수가 있는 지 체크하는 메소드다. while문 조건 안에 넣고 인풋은 당연히 nextInt()로 받아야 한다 왜냐면 nextLine() 이나 next()로 받았다가 또 오류를 발생시킬 수도 있기 때문!
package Baekjoon.LVL_1;
import java.util.Scanner;
public class Baekjoon_10951 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while(input.hasNextInt()) {
int a = input.nextInt(), b = input.nextInt();
System.out.println(a + b);
}
}
}