본문 바로가기

알고리즘/Java

(JAVA) 백준 알고리즘 4단계 10951번 : A + B - 4

while문

 

끝내는 조건이없는 상태여서 기존 하던방식으로 하면 런타임에러가 뜬다.

Buffer로도 해보다가 도저히 모르겠어서 다른 코드를 봤더니 Scanner 클래스 중에 hasNextInt()  를 사용하고 있었음.

 

.hasNextInt()는 입력값이 생기기 전까지 실행을 보류시키는 역할을 한다.[스캐너에 대해 입력이 있는지 확인]

만약 입력한 값이 int 형이 아닐 경우는 false를 리턴하고, int로 표현할 수 있는 형식의 숫자형인 경우는 true를 리턴한다. 사용자가 입력을 할 때가지 실행을 기다렸다가 입력이 일어나면 반복문이 동작하면서 a+b를 실행.

어  hasNext 는,,,,,,scanner 입력이 없으면 다음 입력값을 기다리지 않고 끝낼 수 있는 함수인가보다.

 

소스

1
2
3
4
5
6
7
8
9
10
11
12
import java.util.Scanner;
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