Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
Tags
- 1012 자바
- React Native
- 1389 JAVA
- 알고리즘
- 백준 1012 자바
- 1012 java
- 5430 java
- 백준 유기농 배추
- 백준 5430자바
- BFS
- 1389자바
- 자바
- 백준 1389 자바
- 백준 1012 java
- 백준 1697 자바
- 퇴사
- 노트북 서버
- Expo
- 1697 자바
- mobaXTerm
- 백준 2615
- Ubuntu USB부팅
- ubuntu
- 5430자바
- 백준
Archives
- Today
- Total
삽질메모장
코딩테스트에 자주 쓰이는 입출력 팁 본문
1. JAVA input class
- Scanner, BufferedReader, StringTokenizer
- BufferedReader, StringTokenizer 는 문자열로 활용하기 위해 사용함
- BufferedReader를 사용하는 것이 Scanner를 사용하는 것버다 빠르다.
1-1. BufferedReader
BufferedReader BFR = new BufferedReader(new InputStreamReader(System.in));
String input = BFR.readLine();
1-2. StringTokenizer
- StringTokenizer는 공백이 있을 때 뒤에 문자열이 공백처리를 땡겨 채우도록 한다.
- StringTokenizer가 BufferedReader보다 빠르게 사용 될 수 있다.
-StringTokenizer 사용시
BufferedReader BFR = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(BFR.readLine());
String A = st.nextToken();
String B = st.nextToken();
String C = st.nextToken();
String D = st.nextToken();
BufferedReader를 사용시
BufferedReader BFR = new BufferedReader(new InputStreamReader(System.in));
String[] input = BFR.readLine().split(" ");
2. 자바의 출력 클래스
- System.out.println(""), BufferedWriter, StringBuilder
- 일반적으로 출력할 때 System.out.println("")을 사용한다. 적은 양의 출력에서는 편리하고 성능 차이가 없지만 많은 양의 출력을 할 때는 BufferedWriter이나 StringBuilder를 사용하는 것이 좋다.
2-1. BufferedWriter
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String str = "adc";
bw.write(s); //출력
bw.newLine(); //줄바꿈
bw.flush(); // 버퍼의 남은 데이터 전체 출력
bw.close();
BufferedWriter는 버퍼를 잡아 놓는 것이기에 반드시 사용후에 flush()/close()를 해주어야한다. close()를 하게되면 출력 스트림을 아예 닫아버리기 때문에 한번 출력후에 다른 것도 출력하고자 한다면 flush()를 사용하면 된다.
2-2. StringBuilder
StringBuilder sb = new StringBuilder();
sb.append("a");
sb.append("b").append(" ");
sb.append("C").append("\n");
System.out.println(sb);
reference