Czasami chcemy, aby dane wyjściowe programu zostały wydrukowane w określonym formacie. W języku programowania C jest to możliwe za pomocą funkcji printf(). W tej sekcji omówimy różne formatowanie wyjściowe.
Omówmy, jak możemy sformatować dane wyjściowe w Javie.
Istnieją dwie metody formatowania danych wyjściowych w Javie:
tablice programowania Java
- Korzystanie z metody printf().
- Korzystanie z metody format( ).
Formatowanie danych wyjściowych przy użyciu metody System.out.printf( ).
Implementacja tej metody jest bardzo prosta, gdyż przypomina funkcję printf() w programowaniu w C.
Sformatowane wyjście1.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 ) ; } }
Wyjście:
ls wydaje polecenia Linuksowi
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() jest odpowiednikiem printf() i może być również użyte.
Warto zauważyć, że System.out.print( ) i System.out.println( ) przyjmują pojedynczy argument, ale metoda printf( ) może przyjmować wiele argumentów.
Formatowanie przy użyciu klasy DecimalFormat:
DecimalFormat służy do formatowania liczb dziesiętnych.
Sformatowany plik wyjściowy2.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 ) ) ; } }
Wyjście:
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
Specyfikatory formatu ciągu Java
Tutaj udostępniamy tabelę specyfikatorów formatu obsługiwanych przez ciąg Java.
jak wybrać kolumny z różnych tabel w sql
Specyfikator formatu | Typ danych | Wyjście |
---|---|---|
%A | zmiennoprzecinkowy (z wyjątkiem BigDecima l) | Zwraca wynik szesnastkowy liczby zmiennoprzecinkowej. |
%B | Dowolny typ | „true”, jeśli nie ma wartości null, „false”, jeśli ma wartość null |
%C | Postać | Znak Unicode |
%D | liczba całkowita (w tym bajt, krótki, int, długi, bigint) | Dziesiętna liczba całkowita |
%To jest | zmiennoprzecinkowy | Liczba dziesiętna w notacji naukowej |
%F | zmiennoprzecinkowy | Liczba dziesiętna |
%G | zmiennoprzecinkowy | Liczba dziesiętna, ewentualnie w notacji naukowej, w zależności od precyzji i wartości. |
%H | dowolny typ | Szesnastkowy ciąg wartości z metody hashCode(). |
%N | Nic | Separator linii specyficzny dla platformy. |
%O | liczba całkowita (w tym bajt, krótki, int, długi, bigint) | Liczba ósemkowa |
%S | dowolny typ | Wartość ciągu |
%T | Data/godzina (w tym data długa, kalendarz, data i element TemporalAccessor) | %t to przedrostek konwersji daty/godziny. Następnie potrzeba więcej flag formatujących. Zobacz konwersję daty/godziny poniżej. |
%X | liczba całkowita (w tym bajt, krótki, int, długi, bigint) | Sześciokątny ciąg. |