Metode Java String format () mengembalikan string yang diformat berdasarkan argumen yang diteruskan.
Sintaks dari format()metode String adalah:
String.format(String format, Object… args)
Sini,
format()adalah metode statis. Kami memanggilformat()metode menggunakan nama kelasString.…pada kode di atas menandakan Anda dapat mengirimkan lebih dari satu objek keformat().
format () Parameter
The format()Metode membutuhkan dua parameter.
- format - string format
- args - 0 atau lebih argumen
format () Nilai Kembali
- mengembalikan string yang diformat
Contoh 1: Format String Java ()
class Main ( public static void main(String() args) ( String language = "Java"; int number = 30; String result; // format object as a string result = String.format("Language: %s", language); System.out.println(result); // Language: Java // format number as a hexadecimal number result = String.format("Hexadecimal Number: %x", number); // 1e System.out.println(result); // Hexadecimal Number: 1e ) )
Pada program di atas, perhatikan kodenya
result = String.format("Language: %s", language);
Di sini, "Language: %s"adalah format string .
%sdalam format string diganti dengan konten bahasa. %sadalah penentu format.
Demikian pula, %xdiganti dengan nilai heksadesimal angka in String.format("Number: %x", number).
Format Penentu
Berikut adalah penentu format yang umum digunakan:
| Penentu | Deskripsi |
|---|---|
%b, %B | "true"atau "false"berdasarkan argumen |
%s, %S | Sebuah benang |
%c, %C | karakter Unicode |
%d | bilangan bulat desimal (digunakan hanya untuk bilangan bulat) |
%o | bilangan bulat oktal (digunakan hanya untuk bilangan bulat) |
%x, %X | bilangan bulat heksadesimal (digunakan hanya untuk bilangan bulat) |
%e, %E | untuk notasi ilmiah (digunakan untuk bilangan floating-point) |
%f | untuk angka desimal (digunakan untuk angka floating-point) |
Contoh 2: Pemformatan String Angka
class Main ( public static void main(String() args) ( int n1 = 47; float n2 = 35.864f; double n3 = 44534345.76d; // format as an octal number System.out.println(String.format("n1 in octal: %o", n1)); // 57 // format as hexadecimal numbers System.out.println(String.format("n1 in hexadecimal: %x", n1)); // 2f System.out.println(String.format("n1 in hexadecimal: %X", n1)); // 2F // format as strings System.out.println(String.format("n1 as string: %s", n1)); // 47 System.out.println(String.format("n2 as string: %s", n2)); // 35.864 // format in scientific notation System.out.println(String.format("n3 in scientific notation: %g", n3)); // 4.45343e+07 ) )
Keluaran
n1 dalam oktal: 57 n1 dalam heksadesimal: 2f n1 dalam heksadesimal: 2F n1 sebagai string: 47 n2 sebagai string: 35.864 n3 dalam notasi ilmiah: 4.45343e + 07
Anda dapat menggunakan lebih dari satu penentu format dalam string format.
Contoh 3: Menggunakan lebih dari satu penentu format
// using more than one format specifiers // in a format string class Main ( public static void main(String() args) ( int n1 = 47; String text = "Result"; System.out.println(String.format("%shexadecimal: %x", text, n1)); ) )
Keluaran
Hasil heksadesimal: 2f
Di sini, %sdiganti dengan nilai teks. Demikian pula, %odiganti dengan nilai heksadesimal n1.
Cara kerja format Java String ()
Contoh 4: Memformat Angka Desimal
class Main ( public static void main(String() args) ( float n1 = -452.534f; double n2 = -345.766d; // format floating-point as it is System.out.println(String.format("n1 = %f", n1)); // -452.533997 System.out.println(String.format("n2 = %f", n2)); // -345.766000 // show up to two decimal places System.out.println(String.format("n1 = %.2f", n1)); // -452.53 System.out.println(String.format("n2 = %.2f", n2)); // -345.77 ) )
Keluaran
n1 = -452.533997 n2 = -345.766000 n1 = -452.53 n2 = -345.77
Catatan: Saat kami memformat -452.534 menggunakan %f, kami mendapatkan -452.533997 . Ini bukan karena format()metodenya. Java tidak mengembalikan representasi tepat dari angka floating-point.
Ketika %.2fpenentu format digunakan, format()memberikan dua angka setelah koma desimal.
Contoh 5: Mengisi Angka Dengan Spasi dan 0
// using more than one format specifiers // in a format string class Main ( public static void main(String() args) ( int n1 = 46, n2 = -46; String result; // padding number with spaces // the length of the string will be 5 result = String.format("|%5d|", n1); // | 46| System.out.println(result); // padding number with numbers 0 // the length of the string will be 5 result = String.format("|%05d|", n1); // |00046| System.out.println(result); // using signs before numbers result = String.format("%+d", n1); // +46 System.out.println(result); result = String.format("%+d", n2); // -46 System.out.println(result); // enclose negative number within parenthesis // and removing the sign result = String.format("%(d", n2); // (46) System.out.println(result); ) )
Contoh 6: Menggunakan 0x dan 0 sebelum Heksadesimal dan Oktal
// using 0x before hexadecimal // using 0 before octal class Main ( public static void main(String() args) ( int n = 46; System.out.println(String.format("%#o", n)); // 056 System.out.println(String.format("%#x", n)); // 0x2e ) )
Format String Java () dengan Lokal
format()Metode String juga memiliki sintaks lain jika Anda harus bekerja dengan lokal yang ditentukan.
String.format(Locale l, String format, Object… args)
Contoh 7: Menggunakan JERMAN Locale dalam format ()
// to use Locale import java.util.Locale; class Main ( public static void main(String() args) ( int number = 8652145; String result; // using the current locale result = String.format("Number: %,d", number); System.out.println(result); // using the GERMAN locale as the first argument result = String.format(Locale.GERMAN, "Number in German: %,d", number); System.out.println(result); ) )
Keluaran
Nomor: 8.652.145 Nomor dalam bahasa Jerman: 8.652.145
Catatan: Di Jerman, bilangan bulat dipisahkan oleh, .bukan ,.








