Kata pengantar
Mulai di Java 5.0, kelas string telah menambahkan metode string format () yang kuat. Metode ini tidak digunakan sejauh ini, dan itu benar -benar sia -sia. Artikel ini akan membawa Anda melalui fungsi metode ini dengan cepat. Ketika Anda ingin menggunakan teks yang diformat di masa depan, Anda mungkin tidak perlu lagi meminjam perpustakaan pihak ketiga atau mengimplementasikannya sendiri.
Mari kita lihat contoh sederhana pertama:
String formatted = string.format (" %s %d tahun ini.", "Xiao li", 30); // "Xiao Li berusia 30 tahun tahun ini."Tanpa penjelasan saya, Anda juga dapat melihat:
1. Jenis placeholder
Surat -surat yang mengikuti placeholder "%" menentukan jenis parameter aktual yang diterimanya. Ada beberapa jenis placeholder:
| surat | Jenis parameter yang berlaku | menjelaskan |
|---|---|---|
| %A | Nomor Titik Mengambang | Output nomor titik mengambang di hexadecimal |
| %B / %b | Nilai apapun | Jika parameternya nol, output false, jika tidak output benar |
| %c / %c | Karakter atau bilangan bulat | Output karakter unicode yang sesuai |
| %D | Bilangan bulat | Format output bilangan bulat |
| %e / %e | Nomor Titik Mengambang | Output Nomor Titik Mengambang Menggunakan Notasi Ilmiah |
| %F | Nomor Titik Mengambang | Format output dari angka titik mengambang |
| %g / %g | Nomor Titik Mengambang | Putuskan apakah akan mengeluarkan angka titik mengambang dalam metode notasi ilmiah |
| %h / %h | Nilai apapun | Mengembalikan nilai hashcode () dalam parameter output hexadecimal |
| %Hai | Bilangan bulat | Integer Output di Octal |
| %s / %s | Rangkaian | Format output string |
| %T | Tanggal dan waktu | Format output tanggal dan waktu |
| %x / %x | Bilangan bulat | Output bilangan bulat di heksadesimal |
| %N | tidak ada | Garis istirahat |
| %% | tidak ada | Tanda Persentase itu Sendiri |
Surat modal menunjukkan bahwa output huruf semuanya dikapitalisasi.
Yang paling umum yang kami gunakan adalah %s, %d dan %f, dan kadang -kadang %t. Artikel ini terbatas dalam ruang, jadi hanya empat jenis ini yang diperkenalkan. Baca dokumentasi API untuk sisanya sendiri.
2. Format String dan Integer
Berikut adalah contoh untuk diilustrasikan:
// Isi ruang dan sejajarkan dengan benar: string.format ("%10s, world", "hello"); // output "halo, world" string.format ("%8d", 123); // output "123" // Isi spasi dan sejajarkan kiri: string.format ("%-10s, world", "hello"); // output "halo, world" string.format ("%-8d", 123); // output "123" // complease 0 dan align (valid hanya untuk angka) string.format ("%08d", 123); // output "123" string.format ("%-08d", 123); // kesalahan! 0 tidak diperbolehkan diisi di sisi kanan // output hingga n karakter string.format ("%. 5s", "Hello, World"); // output "halo" string.format ("%. 5s ...", "halo, dunia"); // output "halo ..." string.format ("%10.5s ...", "halo, dunia"); // output "halo ..." // output koma bilangan terpisah string.format ("%, d", 1234567); // output "1.234.567" 3. Pemformatan tanggal
Ini sedikit lebih rumit, tetapi jika Anda ingin mencampur nomor teks dan tanggal dalam string, harus lebih nyaman untuk menggunakan hanya satu metode daripada menggabungkan DateFormat dan NumberFormat bersama -sama.
Pertama, mari kita tambahkan satu pengetahuan lagi, yaitu, placeholder dapat menentukan parameter pada posisi tertentu, dalam format %n $. Misalnya, %2 $ D mewakili parameter pembentukan plastik kedua. Perhatikan bahwa dan di sini dimulai dengan 1 bukan 0.
Saat memformat tanggal, beberapa placeholder diharuskan menunjuk ke parameter yang sama (untuk menghindari mengulangi parameter yang sama beberapa kali). Pada saat yang sama, karena "T" mewakili tanggal dan waktu, format lengkapnya adalah %n $ tx, di mana X mewakili bagian mana dari waktu yang diambil. Nilai opsional untuk x misalnya:
Y = tahun; m = bulan; d = hari; H = jam; M = menit; S = kedua; L = ms; A = hari dalam seminggu (nama); B = nama bulan;
Ada huruf -huruf lain, silakan merujuk ke dokumentasi API untuk detailnya. Inilah contohnya:
// Format output adalah "sekarang adalah 15:04:52, Minggu" // Perhatikan bahwa 10 di "%1 $ 10th" juga berarti bahwa ruang tersebut diisi dengan 10 bit dan string yang selaras.
Meringkaskan
Di atas adalah seluruh konten artikel ini. Saya berharap konten artikel ini memiliki nilai referensi tertentu untuk studi atau pekerjaan semua orang. Jika Anda memiliki pertanyaan, Anda dapat meninggalkan pesan untuk berkomunikasi. Terima kasih atas dukungan Anda ke wulin.com.