printf and formatter
printf와 지시자(%d, %f, %s,...)
System.out.prinln(10.0/3);//3.333333...System.out.prinln(0x1A);//26System.out.prinf("%.2f",10.0/3);//3.33System.out.prinf("%d",0x1A);//26System.out.prinf("%X",0x1A);//1ALast updated
printf와 지시자(%d, %f, %s,...)
System.out.prinln(10.0/3);//3.333333...System.out.prinln(0x1A);//26System.out.prinf("%.2f",10.0/3);//3.33System.out.prinf("%d",0x1A);//26System.out.prinf("%X",0x1A);//1ALast updated
//8진수, 16진수에 접두사가 붙이기
System.out.prinf("%#o",15);//017
System.out.prinf("%#x",15);//0xf
System.out.prinf("%#X",15);//0Xffloat f = 123.4567890f;
//float은 정밀도가 7자리이므로 소수점을 포함한 7자리까지만 의미있고 그 이하로는 부정확한 값이다.
System.out.printf("%f", f);//123.456787. 소수점아래 6자리까지 보여준다.
System.out.printf("%e", f);//1.234568e+02. '8'은 반올림 되었고, e+02 = 10^2이다.System.out.prinf("%g",123.456789);//123.457 소수점을 포함하여 7자리로 보여준다.%f처럼
System.out.prinf("%g",0.0000001);//1.00000e-8 지수로 표현하는 게 더 간략해서 %e처럼 지수로 표현.//정수
System.out.printf("[%5d]%n",10);//_ _ _ 1 0;오른쪽 정렬
System.out.printf("[%-5d]%n",10);//1 0 _ _ ;왼쪽 정렬
System.out.printf("[%05d]%n",10);//00010출력
System.out.printf("[%5d]%n",1234567);//1234567출력. 5자리로 지정했지만 넘기 때문에 그냥 다 출력된다.
//실수
double d = 1.23456789;
System.out.printf("%f%n",d);//1.234568
System.out.printf("%14.10f%n",d);//소수점포함 전체 14자리, 소수점 아래 10자리.정수부분은 공백문자, 소수점 부분은 0으로 채워진다.
System.out.printf("%.6f%n",d);//소수점 아래 6자리까지표현
//문자열
System.out.printf("[%s]%n","www.codechobo.com");
System.out.printf("[%20s]%n","www.codechobo.com");//20자리 지정
System.out.printf("[%-20s]%n","www.codechobo.com");//20자리 지정, 왼쪽 정렬
System.out.printf("[%.10s]%n","www.codechobo.com");//10자리까지만 잘라서 출력 가능