[JAVA] CodeUp1079

정상희·2022년 10월 21일
0

PS

목록 보기
6/8

문제

목표 : Scanner없이 BufferdReader로 풀이해보기

  • BufferedReader + InputStreamReader

1. split으로 분리해서 풀이하기

import java.io.*;

public class Main {
    private static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
    public static void main(String[] args)  {
        try(InputStreamReader in = new InputStreamReader(System.in);
            BufferedReader br = new BufferedReader(in)) {
            String line;
            String [] tokens;
            while((line = br.readLine())!= null){
                tokens = line.split("\\s");
                for(int i = 0; i< tokens.length; i++){
                    System.out.println(tokens[i]);
                    if (tokens[i].equals("q")) {
                        return;
                    }
                }
            }
            br.close();
            bw.flush();
            bw.close();

        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}

2. StringTokenizer을 사용하기

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

public class Main {
    public static StringTokenizer st;
    public static void main(String[] args) {
        try (InputStreamReader in = new InputStreamReader(System.in);
             BufferedReader br = new BufferedReader(in);){
            st = new StringTokenizer(br.readLine()," "); // 공백을 기준으로 구분
            while(st.hasMoreTokens()){		   // 남아있는 토큰이 있다면 true반환
                String compare = st.nextToken();
                System.out.println(compare);
                if(compare.equals("q")) {
                    return;
                }
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}
profile
기록중

0개의 댓글

관련 채용 정보