[백준 1000] A+B
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
예제 입력 1
1 2
예제 출력 1
3
내가 작성한 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = Integer.parseInt(scanner.nextLine());
int b = Integer.parseInt(scanner.nextLine());
System.out.println(a + b);
}
}
실행결과
런타임 에러(NumberFormat)
에러 발생 원인
-
예제 입력이
1 (스페이스) 2
로 되어 있었는데 당연히1 (엔터) 2
일거라고 생각함 -
java.lang.NumberFormatException
: 문자열을 수로 변환할 때 발생하는 에러
: 입력받은 문자열
1 2
는 정수 하나로 변환할 수 없기 때문에 에러 발생: 입력이 한 줄에 공백으로 구분되어서 들어오는 경우, 공백을 기준으로 문자열을 나눠서 처리해야 함
올바른 코드
split()
메소드를 통해 공백 기준으로 문자열을 나눠 배열로 만들어 준 후 각각의 인덱스를 변수에 할당
import java.util.Scanner;
public class Study {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] str = scanner.nextLine().split(" ");
int a = Integer.parseInt(str[0]);
int b = Integer.parseInt(str[1]);
System.out.println(a + b);
}
}
Author And Source
이 문제에 관하여([백준 1000] A+B), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@helloimlily/백준-1000-AB저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)