개발일지

[백준 JAVA] 11718번: 그대로 출력하기 본문

Java/알고리즘 공부

[백준 JAVA] 11718번: 그대로 출력하기

O'mil 2023. 3. 19. 17:13
728x90
문제


풀이
  • Scanner와 Buffer 2가지 방식으로 문제를 풀어보았다.

 

1. Buffer를 이용한 방식

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

public class Main {
    public static void main(String[] args) throws IOException {

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

        while ((str = br.readLine()) != null) {
            System.out.println(str);
        }
        br.close();
    }
}
  • 확인해야 할 점은 while문 내에서 문자열을 입력 받아야 한다는 점이다.
  • 입력받은 문자열이 null이 아닐 경우 출력하고 이를 반복한다.

 

 

2. Scanner를 이용한 방식

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        while (sc.hasNext()) {
            System.out.println(sc.nextLine());
        }
        sc.close();
    }
}
  • 주의해야 할 점은 Buffer과 다르게 hasNext()를 사용한다는 점이다.
    • hasNext()
      : boolean 타입을 반환
      가져올 값이 있으면 True, 없으면 False를 반환한다.
  • while문을 사용해 다음에 가져올 값이 있으면 그 문자열을 입력받아 출력하고 이를 반복한다.
  • Scanner를 사용할 때 '!= null'을 사용하면 런타임 에러가 나므로 주의!

 


참고)

https://plplim.tistory.com/7

 

728x90
Comments