끝내는 조건이없는 상태여서 기존 하던방식으로 하면 런타임에러가 뜬다.
Buffer로도 해보다가 도저히 모르겠어서 다른 코드를 봤더니 Scanner 클래스 중에 hasNextInt() 를 사용하고 있었음.
.hasNextInt()는 입력값이 생기기 전까지 실행을 보류시키는 역할을 한다.[스캐너에 대해 입력이 있는지 확인]
만약 입력한 값이 int 형이 아닐 경우는 false를 리턴하고, int로 표현할 수 있는 형식의 숫자형인 경우는 true를 리턴한다. 사용자가 입력을 할 때가지 실행을 기다렸다가 입력이 일어나면 반복문이 동작하면서 a+b를 실행.
어 hasNext 는,,,,,,scanner 입력이 없으면 다음 입력값을 기다리지 않고 끝낼 수 있는 함수인가보다.
소스
1
2
3
4
5
6
7
8
9
10
11
12
|
public class Main{
public static void main(String[]args){
Scanner scan = new Scanner(System.in);
while(scan.hasNextInt()){
int a = scan.nextInt();
int b = scan.nextInt();
System.out.println(a+b);
}
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
'알고리즘 > Java' 카테고리의 다른 글
(JAVA) 백준 알고리즘 5단계 10039번 : 평균 점수 (0) | 2020.04.18 |
---|---|
(JAVA) 백준 알고리즘 4단계 1110번 : 더하기 사이클 (0) | 2020.04.18 |
(JAVA) 백준 알고리즘 4단계 10952번 : A + B - 5 (0) | 2020.04.17 |
(JAVA) 백준 알고리즘 3단계 10871번 : X보다 작은 수 (0) | 2020.04.17 |
(JAVA) 백준 알고리즘 3단계 2439번 : 별찍기 - 2 (0) | 2020.04.14 |