[JAVA] printf

Hyeok·2022년 10월 5일
1

JAVA

목록 보기
4/10
post-thumbnail

오늘의 목표
1. printf를 이용한 출력
2. printf를 이용한 출력 예제

1.printf를 이용한 출력

지금까지 println()를 사용하기 편했지만 변수의 값을 그대로 출력하므로,
값을 변환하지 않고는 다른 형식으로 출력할 수 없다. 같은 값라도 다른형식으로
출력하고 싶을 때, ex)소수점 둘째자리까지만,정수를 16진수,8진수로 출력하고 싶을때
printf()를 사용하면 된다.

printf()는 '지시자'를 통해 변수의 값을 여러 가지 형식으로 변환하여 출력하는 기능이 있다.
'지시자'는 값을 어떻게 출력할 것인지를 지시해주는 역할을 한다.
'지시자'마다 형식이 변환되며 다음을 코드로 가볍게 보자면 다음과 같다.

System.out.print("age:%d", age);
System.out.print("age:%d", 14);
System.out.rpint("age:14"); //  "age:14"의 값이 화면에 출력된다.

만에하나 출력하는 값이 2개라면 , 지시자도 2개를 사용해야 하며 출력될 값과 지시자의 순서는 일치해야한다. 물론 3개의 이상의 값도 지시자를 지정해서 출력할 수 있다.
딱히 갯수 제한은 없다.

System.out.print("age:%d year:%d" , age , year);
System.out.print("age:%d year:%d" , 24 , 2022);
	// "age:24 year:2022"이 화면에 출력된다.
  • println()과 달리 printf()는 출력 후 줄 바꿈을 하지 않는다.
    줄바꿈을 하려면 지시자'%n'을 따로 넣어줘야 한다.

1-1 지시자 목록

지시자설명
%d10진(decimal) 정수의 형식으로 출력
%x16진(hexa-decimal)의 정수의 형식으로 출력
%f , %e부동 소수점 (floating-point)의 형식으로 출력
%c문자 (character)로 출력
%s문자열 (String)로 출력

위에 두개는 정수, 가운데는 실수 , 밑에 2개는 문자 이다.

2. printf를 이용한 출력 예제

class Ex_9 {
	public void main(String[] args){
    String -url = "www.codechobo.com";
    float f1 = .10f;
    float f2 = 1e1f;
    float f3 = 3.14ef;
    double d = 1.23456789;
    System.out.printf("f1=%f, %e , %g%n , f1 , f1, f1);
    System.out.printf("f2=%f , %e , %g%n , f2 , f2 ,f2);
    System.out.printf("f3=%f , %e , %g%n , f3 , f3 ,f3);
    System.out.printf("d=%f%n", d);
    System.out.printf("d=%14.10f%n",d); //전체 14자리 중 소수점 10자리
    System.out.printf("[12345678901234567890]%n");
    System.out.printf([%s]%n , url);
    System.out.printf([%20s]%n , url);
    System.out.printf([%-20s]%n , url); //왼쪽 정렬
    System.out.printf([%.8s]%n , url); //왼족에서 8글자만 출력
    }
 }

실수형 값의 출력에 사용되는 지시자는 %f, %e , %g가 있는데
주로 %f 가 주로 쓰이고 '%e'는 지수형태로 출력할 때
'%g'는 값을 간략하게 표한할 때 사용한다.

그리고 다음과 같이 전체 자리수와 소수점 아래의 자리수를 지정할 수도 있다.

profile
안녕하세요.

0개의 댓글

관련 채용 정보