develop/java&spring

[JAVA] 데이터 입력부 : BufferedReader, StringTokenizer 기초

3sammy 2020. 8. 2. 20:14
반응형

1. 선언

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

	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        
    }

- java.io. 에서 BufferedReader /IOException /InputStreamReader 세 가지를 import 한다.

- 메인에서 throws IOException 한다.

- System.in 은 ㅈbyte 단위 입력이 이루어지고, BufferedReader는 Char단위 입력이 이루어진다. InputStreamReader를 통해 변환.

 

 

2. 사용 

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

public class BufferedTest {

	public static void main(String[] args) throws IOException{
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		//abcd efg
		String input = br.readLine();
		char[] ch = input.toCharArray();
		
		for (char c : ch) {
			System.out.print(c + " "
					+ "");
		}
		//a b c d   e f g 
		
		System.out.println();
		
		//1-2-44-55-99
		StringTokenizer st = new StringTokenizer(br.readLine(),"-");
		int a = Integer.parseInt(st.nextToken());
		int b = Integer.parseInt(st.nextToken());
		int c = Integer.parseInt(st.nextToken());
		int d = Integer.parseInt(st.nextToken());
		
		System.out.println(a + " and " + b + " and " + c + " and " + d);
		//1 and 2 and 44 and 55

	}
}

readLine() 기능으로 문자열 입력. String으로 본인이 필요한 것에 따라 가공하는 과정 필요.

 

br.readLine().toCharArray(); 입력받은 문자열을 생성된 char 배열에 개별로 입력함
br.readLine().charAt(0); 입력받은 문자열에서 해당 인덱스의 값을 반환함 
StringTokenizer(br.readLine(),"-") 입력받는 데이터(br.readLine())에서 구분자를 입력함
st.nextToken() 구분자를 바탕으로 끊어진 덩어리들 1, 2, 44, 55, ...

 

 

 

 

 

 

반응형