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

SHORTCUT

    반응형

    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, ...

     

     

     

     

     

     

    반응형

    댓글

    Designed by JB FACTORY