[Java] 05_기본입출력
기본 입출력
#01. 입력
키보드를 통해 사용자에게 어떤 내용을 입력받아서 변수에 저장 가능함.
1) 구현절차
클래스 정의 상단에 다음의 구문을 추가함import java.util.Scanner;메인 메서드 첫 라인에서 다음의 구문을 추가함Scanner reader = new Scanner(System.in);숫자값을 입력받고자 하는 경우int input = reader.nextInt();문자열을 입력받고자 하는 경우String input = reader.nextLine();
#02.형식문자
문자열을 출력할 때 변수값이 적용될 수 있는 치환자.
1) 종류
형식문자의미설명
%s | 문자열 | 문자열을 지정 |
%d | 정수 | 10진 정수로 표시 |
%f | 부동 소수점 | 실수형태의 10진수로 표시 |
%g | 부동 소수점 | 실수형태의 소수점 10진수로 표시 (반올림 되어 표시, 소수점을 잘라버림) |
%% | 퍼센트 | 퍼센트를 표시 |
2) 형식문자를 포함하는 문자열 직접 출력하기
String name = "토마토"; int age = 20; System.out.printf("%s님은 %d세 입니다.\n", name, age);
3) 형식문자를 포함하는 문자열에 변수를 적용한 새로운 문자열 만들기
String name = "토마토"; int age = 20; // String result = "토마토님은 20세 입니다."; 와 같은 결과 String result = String.format("%s님은 %d세 입니다.\n", name, age);
4) 자리수 지정
'%' 다음에 자리수를 의미하는 숫자를 명시할 수 있다.
출력되는 내용은 오른쪽에 정렬하고 남는 자리는 공백으로 채워진다.
만약 자리수가 부족할 경우 원본값이 그대로 출력된다.
문자열의 자리수 지정 System.out.printf("%10s\n", "java");출력결과______java정수의 자리수 지정 System.out.printf("%10d\n" , 1234567);출력결과___1234567실수의 자리수 지정
소수점을 포함하여 10자리를 만들기 위해 뒤에 0을 추가한다.
System.out.printf("%10f\n", 123.4567);출력결과123.456700 // 왼쪽으로 정렬되고 뒤에 0이 자리수 만큼 붙는다. `.`도 자리수에 포함된다
5) 빈 자리를 0으로 채우기
정수의 경우
빈 자리를 0으로 채우도록 지정할 수 있다.
'%' 다음에 '010' 과 같은 형식으로 0을 먼저 명시하고 자리수를 지정한다.
System.out.printf("%010d\n", 1234567);
출력결과
0001234567
실수의 경우 // 전체 10자리 0은 값의 뒤에 적용된다. (기본형)
System.out.printf("%10f\n", 123.4567); // 소수점 둘째자리까지만 출력 (소수점 반올림)
System.out.printf("%.2f\n" , 123.4567); // 소수점 자리수가 지정된 경우에 한해서 빈자리를 공백으로 두고 오른쪽정렬 System.out.printf("%10.2f\n" , 123.4567 ); // 소수점 자리수가 지정된 경우에 한해서 빈자리를 0으로 채우고 오른쪽 정렬
System.out.printf("%010.2f\n" , 123.4567 );
출력결과
123.456700 123.46 ____123.46 0000123.46
#03. 이스케이프 문자
출력시에 문자열에 포함시킬 수 없는 줄바꿈, 탭키 등을 처리하기 위한 특수문자.
글자 앞에 **역슬래시('\')**를 적용하여 두 글자가 모여 한 글자로 인식된다.
이스케이프 문자의미
`\n` | 줄바꿈 |
`\t` | 탭키 |
`\"` | 쌍따옴표 |
`\'` | 홑따옴표 |
`\\` | 역슬래시 자체 |
System.out.printf("\"java\"\t\'Programming\'");
System.out.prinln("Hello\nWorld");
출력결과
"java" 'Programming' Hello World