[Java] Standard I/O
표준 입출력
- 표준입력 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(); // 항상 닫아주자
- 예제 결과
Author And Source
이 문제에 관하여([Java] Standard I/O), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@98kimjh/Java-Standard-IO저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)