본문 바로가기

JAVA

기본입출력

기본 입출력

#01. 입력

키보드를 통해 사용자에게 어떤 내용을 입력받아서 변수에 저장 가능함.

1) 구현절차

클래스의 정의 상단에 다음의 구문을 추가함

import java.util.Scanner;

####메인 메서드 첫 라인에서 다음의 구문을 추가함

Scanner reader = new Scanner(System.in);

숫자값을 입력받고자 하는 경우

int input = reader.nextInt();

문자열을 입력받고자 하는 경우

String input = reader.nextLine();

형식문자

문자열을 출력할 때 변수값이 적용될 수 있는 치환자.

1) 종류

형식문자 의미
%s 문자열
%d 정수
%f 부동 소수점
%g 부동 소수점
%% 퍼센트

2) 형식문자를 포함하는 문자열 직접 출력하기

형식문자를 치환할 변수들을 순서대로 문자열 뒤에 명시한다.

\n은 줄바꿈을 의미하는 문자.

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");  // 10%s\n 이 10자리를 채우라는 뜻
출력결과
_ _ _ _ _ _java 

정수의 자리수 지정

System.out.printf("10%d\n", "1234567"); // 10%d\n 이 10자리를 채우라는 뜻
출력결과

_ _ _1234567 // <--- 10자리

실수의 자리수 지정

소수점을 포함하여 10자리를 만들기 위해 뒤에 0을 추가한다.

System.out.printf("%10f\n", "123.4567"); // 10%f\n 이 10자리를 채우라는 뜻
출력결과

123.456700 // <--- 00붙여 10자를 채움

5) 빈 자리를 0으로 채우기

정수의 경우

빈 자리를 0으로 채우도록 지정할 수 있다.

% 다음에 010과 같은 형식으로 0을 먼저 명시하고 자리수를 지정한다.

System.out.printf("%010d\n", 1234567);  // 앞자리 000을 채워주므로 10자리 만듬
출력결과
0001234567

실수의 경우

    // 전체 10자리 0은 값의 뒤에 적용된다.(기본형)
    System.out.printf("%010f\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.println("Hello\nWorld");
출력결과
"Java"  'Programming'
Hello
World

'JAVA' 카테고리의 다른 글

반복문  (0) 2020.05.18
조건문  (0) 2020.05.18
연산자  (0) 2020.05.15
변수  (0) 2020.05.15
자바시작하기  (0) 2020.05.14