본문 바로가기

개발 일기/Java Programming

System.out의 기본 | 프린트 명령어 | 메소드 | println | print | printf | 서식

System.out의 기본

 

1. 화면에 내용을 출력

프린트 명령어 - '메소드'라고 부름 자바에서는

   a. System.out.println() : 괄호 안의 내용을 출력한 후 한 행을 띄움 (라인피드)

   b. System.out.print() : 괄호 안의 내용을 출력한 후 한 행을 띄우지 않고 유지 (입력한 데이터값 이어서 출력)

   c. System.out.printf() : 서식을 지정해서 출력 (가장 중요하고 많이 씀)

형식 지정 - 정수 / 실수 / 문자 / 문자열

printf(100) 입력하면 앞에서 %d 정수 출력 %f는 소수로 출력 소수점 붙여서

System.out.println("100")

System.out.println("200")

출력되면

100 (enter)

200

그냥 프린트는 100200 붙여서 출력

 

2. System.out.printf() 메소드의 기본적인 사용법

System.out.println("안녕하세요?");
System.out.println("Java입니다.");

안녕하세요?
Java입니다.

System.out.print("안녕하세요?");
System.out.print("Java입니다.");

안녕하세요?Java입니다.

 

System.out.printf("안녕하세요?");

안녕하세요?

- TIP : println()에서 ln은 line feed의 약자로 행을 넘긴다는 의미이다.

System.out.printf()에서 f는 format의 약자서식을 지정한다는 의미이다.

 

System.out.pirntf("100");

100

System.out.printf("%d",100);

100

- 위 첫 번째 System.out.printf("100")의 결과 100은 숫자 100이 아닌 글자 100(일영영)

- 두 번째 System.out.printf("%d", 100)의 결과 100은 숫자 100을 의미한다. 서식(%d)이 지정된 '숫자'는 그대로 숫자의 의미이다.

 

public class EX03_02 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.printf("100+100"); //모두 글자로 취급
		System.out.printf("\n"); //System.out.printf()는 행이 넘어가지 않으므로 강제로 행이 넘어가게 함
		System.out.printf("%d", 100+100); //숫자와 계산해서 결과를 출력
		System.out.printf("\n"); //System.out.printf()는 행이 넘어가지 않으므로 강제로 행이 넘어가게 함
		
	}

}

100+100

200

| 커서는 여기. 마지막에 \n으로 개행했으니까

-"%d"는 정수(decimal)를 의미, 서식의 개수와 큰따옴표 뒤에 나오는 숫자(또는 문자)의 개수가 같아야 한다.

System.out.printf("%d", 100, 200); //%d는 1개, 숫자는 2개이다. 200은 형식지정이 안 돼서 오류
		System.out.printf("\n"); 
		System.out.printf("%d %d", 100); //%d는 2개, 숫자는 1개이다.순차적으로 대응해서 두번째 %d 대응값이 없으므로 오류
		System.out.printf("\n"); //System.out.printf()는 행이 넘어가지 않으므로 강제로 행이 넘어가게 함

100

100 오류~~
첫번째 100은 대응. 뒤가 안 돼서 오류.

 

3. 정수 외에 자주 사용되는 서식

		System.out.printf("%d / %d = %d", 100, 200, 0.5); //%d가 3개, 숫자도 3개
		System.out.printf("\n");

100 / 200 = 오류

서식과 숫자의 불일치 상황

 

System.out.printf()의 대표적 서식

서식 설명 값의 예
%d, %x, %o 정수(10진수, 16진수, 8진수) 10, 100, 1234
%f 실수 (소수점이 있는 수) 0.5, 1.0, 3.14
%c 문자 반드시 한 글자이고 작은 따옴표(' ')로 묶여 이써야 함 'a', 'b', 'F'
%s 문자열 한 글자 이상이고 큰따옴표(" ")로 묶여 있어야 함 "안녕", "abcdefg", "a"

"a" 출력은 되겠지만 'ab'는 불가능

 

public class EX03_03 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub 
		System.out.printf("%d / %d = %f \n", 100, 200, 0.5); //정수 2개와 실수 1개를 출력
		System.out.printf("%c %c \n", 'a', 'k'); //문자 2개를 출력
		System.out.printf("%s %s \n", "IT CookBook", "JAVA"); //문자열 2개를 출력
	}

}

100 / 200 = 0.500000

a k

IT CookBook JAVA