[JAVA] 빠른 입출력을 위한 BufferdReader, BufferWriter

2024. 10. 16. 13:53·Java & Kotlin

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

 

백준 15552번 빠른 A+B번을 평소처럼 Scanner를 이용해 풀다가 시간초과 오류가 떠서 새로운 문법을 배웠다

 

바로 아래에 있는 입출력 문법이다.

주석으로 잘 적어놨으니 시간이 오래걸릴 거 같은 문제에는 buffer 입출력을 사용하자!

 


import java.io.*;
import java.util.StringTokenizer;


public class Main {

    public static void main(String[] args) throws IOException { //입력파일을 찾을 수 없거나
        //스트림에서 오류가 발생할 때 예외가 발생 할 수 있음. 컴파일 오류가 발생안하고 던질수 있도록하기위함.

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //버퍼 리더 생성
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); // 버퍼 라이터 생성

        int T = Integer.parseInt(br.readLine()); // br.readLine()은 string값이여서 parse로 int형으로 바꿔준다! // 예외처리도 해주어야함!

        for(int i =0; i<T; i++){
            StringTokenizer st = new StringTokenizer(br.readLine()); // StringTokenizer는 한 줄의 문자열을 토큰(작은 문자열)로 나눔. 기본적으로 공백을 기준으로 나누지만, 다른 구분자를 지정할 수도 있다.
            int a = Integer.parseInt(st.nextToken());  // st.nextToken()으로 하나씩 받아오는데 string값이라 parse 해줌
            int b = Integer.parseInt(st.nextToken());  // st.nextToken()으로 하나씩 받아오는데 string값이라 parse 해줌
            bw.write(a+b+"\n"); // print()는 그때그때 출력하는데 얘는 쌓아뒀다가 .flush() 한번에 출력하기때문에 빠름
        }
        bw.flush(); // 한번에 출력
        bw.close();// 닫아야 한다. 시스템 누수를 막기위해 좋은 습관 들이자
    }
}

'Java & Kotlin' 카테고리의 다른 글

[JAVA] final 키워드 정복하기!  (0) 2025.10.16
[JAVA] 정적 중첩 클래스를 활용하여 계층간 독립적인 Validation을 적용해보자  (0) 2025.10.16
[JAVA] 정적 팩토리 메서드(Static Factory Method)란? (버거 먹고싶은 작성자와 스프링의 반환 방식을 곁들인)  (0) 2025.10.16
[JAVA] String trim() 메서드 : 문자열의 앞뒤에 있는 모든 공백 문자를 제거해주는 아주 좋은친구 소개  (0) 2024.11.09
[JAVA] charAt() 메서드(문자열에서 문자 뽑기)  (0) 2024.09.17
'Java & Kotlin' 카테고리의 다른 글
  • [JAVA] 정적 중첩 클래스를 활용하여 계층간 독립적인 Validation을 적용해보자
  • [JAVA] 정적 팩토리 메서드(Static Factory Method)란? (버거 먹고싶은 작성자와 스프링의 반환 방식을 곁들인)
  • [JAVA] String trim() 메서드 : 문자열의 앞뒤에 있는 모든 공백 문자를 제거해주는 아주 좋은친구 소개
  • [JAVA] charAt() 메서드(문자열에서 문자 뽑기)
노을을
노을을
진인사대천명
  • 노을을
    노을의 개발일기장
    노을을
  • 전체
    오늘
    어제
    • All (59) N
      • Java & Kotlin (16)
      • Spring (3) N
      • Problem Solve (11) N
      • Computer Science (0)
      • Infra (1)
      • DB (2)
      • Various Dev (23)
        • 우아한테크코스 (9)
        • Git&Github (2)
        • Unity (12)
      • Book (1)
      • Writing (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    오픈미션
    스프링
    개발자
    코딩
    합격
    프리코스
    알고리즘
    코테
    유니티
    java
    우아한테크코스
    github
    자바
    우테코
    게임개발
    백준
    개발
    8기
    티스토리챌린지
    코딩테스트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
노을을
[JAVA] 빠른 입출력을 위한 BufferdReader, BufferWriter
상단으로

티스토리툴바