logo

Formatage de sortie Java

Parfois, nous souhaitons que la sortie d'un programme soit imprimée dans un format spécifique donné. Dans le langage de programmation C, cela est possible en utilisant la fonction printf(). Dans cette section, nous aborderons les différents formats de sortie.

Voyons comment formater la sortie en Java.

Il existe deux méthodes qui peuvent être utilisées pour formater la sortie en Java :

Java-Lambda
  • Utilisation de la méthode printf()
  • Utilisation de la méthode format()

Formatage de la sortie à l'aide de la méthode System.out.printf( )

L’implémentation de cette méthode est très simple car elle est similaire à la fonction printf() en programmation C.

FormattedOutput1.java

 public class FormattedOutput1 { public static void main( String args[ ] ) { // printing the string value on the console String str = ' JavaTpoint ' ; System.out.printf( ' 
 Printing the String value : %s 
 ', str ) ; // printing the integer value on the console int x = 512 ; System.out.printf( ' 
 Printing the integer value : x = %d 
 ', x ) ; // printing the decimal value on the console float f = 5.25412368f ; System.out.printf( ' 
 Printing the decimal value : %f 
 ', f ) ; // this formatting is used to specify the width un to which the digits can extend System.out.printf( ' 
 Formatting the output to specific width : n = %.4f 
 ', f ) ; // this formatting will print it up to 2 decimal places System.out.printf( ' 
 Formatted the output with precision : PI = %.2f 
 ', f ) ; // here number is formatted from right margin and occupies a width of 20 characters System.out.printf( ' 
 Formatted to right margin : n = %20.4f 
 ', f ) ; } } 

Sortir:

télécharger la vidéo depuis YouTube VLC
 Printing the String value : JavaTpoint Printing the integer value : x = 512 Printing the decimal value : 5.254124 Formatting the output to specific width : n = 5.2541 Formatted the output with precision : PI = 5.25 Formatted to right margin : n = 5.2541 

System.out.format( ) est équivalent à printf( ) et peut également être utilisé.

Un point important à noter est que System.out.print() et System.out.println() prennent un seul argument, mais la méthode printf() peut accepter plusieurs arguments.

Formatage à l'aide de la classe DecimalFormat :

DecimalFormat est utilisé pour formater les nombres décimaux.

FormattedOutput2.java

 import java.text.DecimalFormat ; // definition of the class public class FormattedOutput2 { public static void main( String args[ ] ) { double x = 123.4567 ; // printing the number System.out.printf( ' 
 The number is : %f 
 ', x ) ; // printing only the numeric part of the floating number DecimalFormat ft = new DecimalFormat( ' #### ' ) ; System.out.println( ' 
 Without fraction part the number is : ' + ft.format( x ) ) ; // printing the number only upto 2 decimal places ft = new DecimalFormat( ' #.## ' ) ; System.out.println( ' 
 Formatted number with the specified precision is = ' + ft.format( x ) ) ; // automatically appends zero to the rightmost part of decimal, instead of #, we use digit 0 ft = new DecimalFormat( ' #.000000 ' ) ; System.out.println( ' 
 Appending the zeroes to the right of the number = ' + ft.format( x ) ) ; // automatically appends zero to the leftmost of decimal number instead of #, we use digit 0 ft = new DecimalFormat( ' 00000.00 ' ) ; System.out.println( ' 
 Appending the zeroes to the left of the number = '+ ft.format( x ) ) ; // formatting money in dollars double income = 550000.789 ; ft = new DecimalFormat( ' $###,###.## ' ) ; System.out.println( ' 
 Your Formatted Income in Dollars : ' + ft.format( income ) ) ; } } 

Sortir:

 The number is : 123.456700 Without fraction part the number is : 123 Formatted number with the specified precision is = 123.46 Appending the zeroes to the right of the number = 123.456700 Appending the zeroes to the left of the number = 00123.46 Your Formatted Income in Dollars : 0,000.79 

Spécificateurs de format de chaîne Java

Ici, nous fournissons un tableau des spécificateurs de format pris en charge par Java String.

comment lire à partir d'un fichier csv en java
Spécificateur de format Type de données Sortir
%un virgule flottante (sauf BigDecima l) Renvoie la sortie hexadécimale d'un nombre à virgule flottante.
%b N'importe quel type ' vrai ' si non nul, ' faux ' si nul
%c Personnage Caractère Unicode
%d entier (y compris octet, court, int, long, bigint) Entier décimal
%C'est point flottant Nombre décimal en notation scientifique
%F point flottant Nombre décimal
%g point flottant Nombre décimal, éventuellement en notation scientifique selon la précision et la valeur.
%h n'importe quel type Chaîne hexadécimale de valeur de la méthode hashCode().
%n Aucun Séparateur de lignes spécifique à la plate-forme.
%O entier (y compris octet, court, int, long, bigint) Nombre octal
%s n'importe quel type Valeur de chaîne
%t Date/Heure (y compris long, Calendrier, Date et TemporalAccessor) %t est le préfixe pour les conversions Date/Heure. D'autres indicateurs de formatage sont nécessaires après cela. Voir Conversion date/heure ci-dessous.
%X entier (y compris octet, court, int, long, bigint) Chaîne hexagonale.