Kaedah Java String () mengembalikan rentetan berformat berdasarkan argumen yang dilalui.
Sintaks format()kaedah String adalah:
String.format(String format, Object… args)
Di sini,
format()adalah kaedah statik. Kami memanggilformat()kaedah menggunakan nama kelasString.…dalam kod di atas menandakan anda boleh menyampaikan lebih dari satu objekformat().
format () Parameter
The format()Cara mengambil dua parameter.
- format - rentetan format
- args - 0 atau lebih hujah
format () Nilai Pulangan
- mengembalikan rentetan 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 ) )
Dalam program di atas, perhatikan kodnya
result = String.format("Language: %s", language);
Di sini, "Language: %s"adalah rentetan format .
%sdalam rentetan format diganti dengan kandungan bahasa. %sadalah penentu format.
Begitu juga, %xdigantikan dengan nilai heksadesimal nombor dalam String.format("Number: %x", number).
Penentu Format
Berikut adalah penentu format yang biasa digunakan:
| Penentu | Penerangan |
|---|---|
%b, %B | "true"atau "false"berdasarkan hujah |
%s, %S | tali |
%c, %C | watak Unicode |
%d | bilangan bulat perpuluhan (digunakan untuk bilangan bulat sahaja) |
%o | bilangan bulat oktal (digunakan untuk bilangan bulat sahaja) |
%x, %X | bilangan bulat heksadesimal (digunakan untuk bilangan bulat sahaja) |
%e, %E | untuk notasi saintifik (digunakan untuk nombor titik terapung) |
%f | untuk nombor perpuluhan (digunakan untuk nombor titik terapung) |
Contoh 2: Pemformatan String Nombor
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 ) )
Pengeluaran
n1 dalam oktal: 57 n1 dalam heksadesimal: 2f n1 dalam heksadesimal: 2F n1 sebagai rentetan: 47 n2 sebagai rentetan: 35.864 n3 dalam notasi saintifik: 4.45343e + 07
Anda boleh menggunakan lebih dari satu penentu format dalam rentetan format.
Contoh 3: Menggunakan lebih daripada 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)); ) )
Pengeluaran
Hasil heksadesimal: 2f
Di sini, %sdigantikan dengan nilai teks. Begitu juga, %odigantikan dengan nilai heksadesimal n1.
Mengendalikan format Java String ()
Contoh 4: Pemformatan Nombor Perpuluhan
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 ) )
Pengeluaran
n1 = -452.533997 n2 = -345.766000 n1 = -452.53 n2 = -345.77
Catatan: Ketika kita memformat -452.534 menggunakan %f, kita mendapatkan -452.533997 . Ia bukan kerana format()kaedahnya. Java tidak mengembalikan perwakilan nombor floating-point yang tepat.
Apabila %.2fpenentu format digunakan, format()memberikan dua nombor setelah titik perpuluhan.
Contoh 5: Menambah Nombor Dengan Ruang 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 Locale
format()Kaedah String juga mempunyai sintaks lain jika anda harus bekerja dengan tempat yang ditentukan.
String.format(Locale l, String format, Object… args)
Contoh 7: Menggunakan GERMAN 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); ) )
Pengeluaran
Nombor: 8,652,145 Nombor dalam bahasa Jerman: 8.652.145
Catatan: Di Jerman, bilangan bulat dipisahkan oleh .bukan ,.








