[Java] Standard I/O

게맛살맛게·2021년 12월 2일
0

Java

목록 보기
2/18

표준 입출력

  • 표준입력 stdin 키보드 -> System.in
  • 표준출력 stdout 모니터 -> System.out
  • 표준에러 stderr 콘솔 -> System.err

콘솔 출력

System.out.print("안녕");	// 개행 x 이어서⤵
System.out.println("하세요");		// 안녕하세요

System.out.println("안녕하세요");		// 안녕하세요

// System.out.print : 개행 안함
// System.out.println : 개행 함
// System.out.printf : 형식 지정 문자열 출력; -> String.format
		
System.out.print("Hello ");		// 개행 x
System.out.println("Java");		// 개행 o
  • Escape Sequence
    \를 활용한 다양한 escape sequence 존재
    \n : 개행 \t : 탭 \" \' : 따옴표 \\ 슬래시 등등
	// 이스케이프 문자
	// \n(개행), \t(탭), \" \'(따옴표), \\(역슬래시 \ )
		
	System.out.println("Hello\n Java");		// 개행
	System.out.println("Hello\t Java");		// 탭
	System.out.println("Hello \"Java\"");		// 따옴표
		
	String dir = "C:\\Users\\Bit\\Desktop";		// 역슬래시
	System.out.println(dir);
  • 예제 출력 결과



콘솔 입력 - Scanner

  • Scanner 클래스 : 다양한 리소스를 대상으로 입력을 받을 수 있도록 정의된 클래스
    - 외부 클래스 임으로 import하여 사용

    import java.util.Scanner;
    // ... 
    Scanner scanner = new Scanner(System.in);
    int value = scanner.nextInt();
    System.out.println(value);
    scanner.close();		// 시스템 자원은 사용하고 항상 닫아주자!
  • Scanner 클래스 생성자(Constructor)
    - 다양한 형태의 parameter을 받을 수 있음

    • Scanner(File source) : 파일로 부터 입력
    • Scanner(InputStream source) : InputStream으로 부터 입력
    • Scanner(String source) : 문자열로 부터 입력
    • Scanner(System.in) : 시스템(키보드)로 부터 입력
  • Scanner Method
    - 각 메소드 마다 입력 받는 형식이 다름

    • next() : 다음 데이터를 문자로 입력
    • nextInt() : 다음 데이터를 Int 형으로 입력 (Type이 맞아야함)
    • nextLine() : \n전까지 모두 받아옴 (한줄단위)

  • 예제
    		Scanner scanner = new Scanner(System.in);
		System.out.print("이름은?");
		String name = scanner.next();
		System.out.print("나이는?");
		int age = scanner.nextInt();
		
		System.out.println("당신의 나이는 " + age + ", 이름은 " + name + "입니다.");
		scanner.close(); 		// 항상 닫아주자
		
		String rawString = "문자열로 이루어진 스캐너 테스트";
		scanner = new Scanner(rawString);
		String s1, s2, s3;
		s1 = scanner.next();
		s2 = scanner.next();
		s3 = scanner.nextLine();
		
		System.out.println(s1 + s2 + s3);
		
		scanner.close(); 		// 항상 닫아주자
  • 예제 결과
profile
IT 기술블로그

0개의 댓글