logo

Opmaak van Java-uitvoer

Soms willen we dat de uitvoer van een programma in een bepaald specifiek formaat wordt afgedrukt. In de programmeertaal C is dit mogelijk met behulp van de printf( ) functie. In deze sectie bespreken we de verschillende uitvoerformaten.

Laten we bespreken hoe we de uitvoer in Java kunnen formatteren.

Er zijn twee methoden die kunnen worden gebruikt om de uitvoer in Java te formatteren:

afbeeldingen uitlijnen in css
  • De printf()-methode gebruiken
  • Met behulp van de format()-methode

Uitvoer formatteren met System.out.printf( ) Methode

De implementatie van deze methode is heel eenvoudig omdat deze vergelijkbaar is met de printf()-functie in C-programmering.

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 ) ; } } 

Uitgang:

levenscyclus van softwareontwikkeling
 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( ) is gelijk aan printf( ) en kan ook worden gebruikt.

Een belangrijk punt om op te merken is dat System.out.print( ) en System.out.println( ) één enkel argument accepteren, maar de printf() methode kan meerdere argumenten accepteren.

Opmaak met behulp van de klasse DecimalFormat:

DecimalFormat wordt gebruikt om decimale getallen op te maken.

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 ) ) ; } } 

Uitgang:

 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 

Specificatoren voor Java-tekenreeksformaten

Hier bieden we een tabel met formaatspecificaties die worden ondersteund door de Java String.

npm-cache wissen
Formaatspecificatie Data type Uitvoer
%A drijvende komma (behalve BigDecima l) Retourneert Hex-uitvoer van een getal met drijvende komma.
%B Elk type 'true' als het niet nul is, 'false' als het nul is
%C Karakter Unicode-teken
%D geheel getal ( incl. byte, short, int, long, bigint ) Decimaal geheel getal
%Het is drijvende punt Decimaal getal in wetenschappelijke notatie
%F drijvende punt Decimaal getal
%G drijvende punt Decimaal getal, eventueel in wetenschappelijke notatie, afhankelijk van de nauwkeurigheid en waarde.
%H elk type Hex Tekenreeks van waarde uit de methode hashCode().
%N Geen Platformspecifieke lijnscheider.
%O geheel getal ( incl. byte, short, int, long, bigint ) Octaal getal
%S elk type Tekenreekswaarde
%T Datum/Tijd (incl. lang, Kalender, Datum en TemporalAccessor) %t is het voorvoegsel voor datum-/tijdconversies. Hierna zijn meer opmaakvlaggen nodig. Zie Datum/tijdconversie hieronder.
%X geheel getal ( incl. byte, short, int, long, bigint ) Hex-reeks.