/*====================================================
■■■■ 자바 기본 프로그래밍 ■■■■■
- 자바의 기본 입출력 : printf()
=====================================================*/
public class Test016
{
public static void main(String[] args)
{
System.out.print("AAA");
System.out.print("BBB");
System.out.print("CCC\n"); // \n은 개행
//서식 출력 메소드
System.out.printf("12345678901234567890");
System.out.printf("12345678901234567890\n");
System.out.printf("12345678901234567890%n");
System.out.printf("%d + %d = %d\n", 10, 20, 30);
/*
AAABBBCCC
1234567890123456789012345678901234567890
12345678901234567890
10 + 20 = 30
계속하려면 아무 키나 누르십시오 . . .
*/
System.out.printf("%d\n", 123);
System.out.printf("%7d\n", 123);
System.out.printf("%10d\n" , 123);
System.out.printf("%010d\n" , 123);
// %d 사이에 위치한 10 의 의미 : 총 10칸의 공간에 우측정렬하는 것이다.
/*
123
123
123
0000000123
*/
System.out.printf("%d\n" ,365);
System.out.printf("%+d\n", 365);
System.out.printf("+%d\n", 365);
/*
365
+365
+365
*/
System.out.printf("%d\n", +365);
//365
System.out.printf("%d\n", -365);
//System.out.printf("%-d\n", 365);
//자바는 대부분 컴파일 에러인데 (컴파일 과정에서 에러 찾아줌)
//서식은 런타임 에러난다. ex %d에 3,14넣는다고 했을 때 컴파일은 된다. 그런데 런타임 에러난다.
//%d사이에 -넣으면 런타임 에러
System.out.printf("-%d\n", 365);
//-365
System.out.println();
// 개행
System.out.printf("%(d\n", -365); // check~~!!
System.out.printf("%(d\n", 365);
/*(365)
365
*/
//System.out.printf("%d\n", 'A');
//위에 런타임 에러발생
System.out.printf("%c\n", 'A');
//System.out.printf("%c\n" , "ABCD"); //이것도 런타임 에러발생
System.out.printf("%s\n", "ABCD");
//문자는 c 문자열은 s에 담는다.
System.out.println();
System.out.printf("%h\n", 365);
System.out.printf("%o\n", 24);
//h는 16 진수 o는 8진수로 표현한다.
/*
16d
30*/
System.out.printf("%s\n" , "true");
System.out.printf("%b\n" , true);
/*
true
true*/
//위는 문자열 true이고 아래는 현상 true 이다.
//-----------------( %f )-------------------------
System.out.println(); //개행
System.out.printf("%f\n", 123.23);
System.out.printf("%.2f\n", 123.23); //(반올림 처리 돼서 소수점 둘째자리까지)
System.out.printf("%.2f\n", 123.236);
System.out.printf("%.2f\n", 123.231);
System.out.printf("%8.2f\n", 123.236); //전체 다 8칸을 주는 것(따라서 앞의 공백 2칸이생긴다)
System.out.printf("%2.2f\n", 123.1234); //표현범위보다 더 적은 공백이 확보되면 그냥 표현할 수 있는대로 나온다.
/*
123.230000
123.23
123.24
123.23
123.24
123.12*/
}
}