알고리즘/백준
[백준]10951번 : A + B - 4
희구
2021. 8. 26. 21:47
문제
코드
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);
}
scan.close();
}
}
풀이
바로 전에 풀었던 문제와 똑같아서 눈에 익었는데
도무지 찾아봐도 언제 종료하는지 종료시점이 명시되어있지 않았다.
찾아보니 이런 경우를 알고리즘에서 EOF라고 불렀다.
EOF란 ?
더이상 읽을 수 있는 데이터가 없을 때 종료한다는 뜻으로
데이터가 더이상 존재하지 않을 때 끝내라는 뜻이다.
나는 Scanner의 hasNext()라는 메소드를 이용하였다.
hasNext()란?
Scanner의 내장함수로, 스캐너 객체로 데이터가 들어왔는지의 확인하여 여부를 반환하는 함수이다.
이 문제는 정수형이 없거나 아닐경우 false를 반환해야 하기때문에 hasNextInt()를 사용하였다.
hasNextInt()는 정수일 경우 true를 반환하며 정수가 아닐 경우 false를 반환해 반복문을 종료시킨다.
알고리즘을 공부하면서 자바를 처음부터 차근차근 해보며 복기시키고 있다.
매일매일 공부하고 찾아보고 머릿속에 집어 넣는데 다음 날이 되면
또 까먹는 매직~
제발 좀 기억해내고 잘 응용해냈으면 좋겠다.