Notice
Recent Posts
Recent Comments
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

충분히 쌓여가는

백준[Java] 10951번 A+B-4 (hasNextInt 사용 [중요!]) 본문

IT/Java[백준]

백준[Java] 10951번 A+B-4 (hasNextInt 사용 [중요!])

빌드이너프 2023. 2. 23. 21:24

 

https://www.acmicpc.net/problem/10951

 

10951번: A+B - 4

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

문제풀이 1

import java.util.Scanner;
public class _10951_1 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        while (sc.hasNextInt()) {
            int A = sc.nextInt();
            int B = sc.nextInt();
            System.out.println(A+B);
        }
        sc.close();
    }
}

문제풀이 2

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class _10951_2 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        StringTokenizer st;
        String str;

        while ((str=br.readLine()) != null) {
            st = new StringTokenizer(str, " ");
            int A = Integer.parseInt(st.nextToken());
            int B = Integer.parseInt(st.nextToken());
            sb.append(A+B).append('\n');
        }
        System.out.println(sb);
    }
}

문제풀이 3

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class _10951_3 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        String str;

        while ((str=br.readLine()) != null) {
            int A = str.charAt(0)-'0';
            int B = str.charAt(2)-'0';
            sb.append(A+B).append('\n');
        }
        System.out.println(sb);
    }
}

hasNext

입력된 토큰이 있으면 true를 반환하고, 그렇지 않을 경우 false를 반환

 

hasNextInt

Scanner에서 정수를 입력받은 경우 true를 정수를 입력받지 않는 경우 false의 값을 반환받는 메소드

 

EOF(End of File): 데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타내는 용어


Scanner 클래스

Scanner scan = new Scanner(System.in);
		
while(scan.hasNext()) {
  System.out.println(scan.nextLine());
}

BufferedReader 클래스

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = "";

while((input = br.readLine()) != null) {
}

br.readLine()으로 입력값을 계속 읽되, 읽은 값이 null이 되면 반복문을 종료하는 방식