Dengan perkembangan berterusan bahasa Java, pelbagai API dan fungsi yang disediakan oleh Java menjadi semakin kaya. Antaranya, fungsi MessageFormat ialah alat pemformatan teks yang sangat praktikal. Fungsi MessageFormat boleh memformat rentetan dalam program Java, menggantikan ruang letak secara automatik dalam mesej dalam output yang dijana, dan mengekalkan maklumat tempat untuk menjadikan kandungan output lebih tepat. Artikel ini akan menerangkan secara terperinci cara menggunakan fungsi MessageFormat untuk memformat teks.
1. Apakah fungsi MessageFormat? Dalam Java, MessageFormat ialah kelas yang menyediakan kaedah untuk memformat dan mengeluarkan mesej yang kompleks. MessageFormat membolehkan anda menentukan mesej yang mengandungi parameter dan kemudian hanya menghantar nilai kepada mesej itu untuk menjana mesej output baharu. Format fungsi MessageFormat ialah:
int age = 22; ";
String greeting = MessageFormat.format("Hello, {0}, anda berumur {1} tahun pada tahun ini dan anda adalah {2}.", nama, umur, pekerjaan);
System.out.println ( salam);
Hasil output ialah: Hello, Xiao Ming, anda berumur 22 tahun dan seorang pengaturcara.
2. Penentu format fungsi MessageFormat
Dalam fungsi MessageFormat, pemegang tempat perlu dipadankan dengan nilai sebenar, jadi penentu format perlu digunakan. Penentu format ialah sintaks penanda yang digunakan untuk menentukan format rentetan gantian. Struktur umum penentu format adalah seperti berikut:
{argument_index, format_type, format_style}
Perhatikan bahawa penentu format mengandungi tiga bahagian, iaitu indeks parameter, jenis format dan gaya format. Indeks parameter menentukan subskrip parameter yang akan diganti dalam tatasusunan parameter, jenis format menentukan jenis data parameter yang akan diganti dan gaya format menentukan format rentetan yang digunakan untuk memformat parameter.
1. Indeks parameter
Indeks parameter merujuk kepada nombor dalam ruang letak, yang menentukan subskrip parameter yang akan diganti dalam tatasusunan parameter. Contohnya, dalam kod di atas, pemegang tempat "{0}" menentukan parameter pertama, iaitu nama pembolehubah rentetan.
2. Jenis format
bilangan int = 123456;
MesejFormat.mat. format("Kami mempunyai {0,bilangan} pengguna.", count);
Hasil output ialah: Kami mempunyai 123,456 pengguna.
3. Gaya format
Gaya format merujuk kepada format rentetan yang digunakan untuk memformat parameter. Sintaks gaya format bergantung pada jenis format. Dalam contoh berikut, kami akan menggunakan gaya format untuk memformat tarikh dan masa ke dalam format yang ditentukan:
Tarikh sekarang = new Date();
Hasil keluaran ialah: masa semasa ialah 14:58:30. Tarikhnya ialah 2021-02-16.
3. Petua praktikal untuk menggunakan fungsi MessageFormat
1 Sokongan PenyetempatanDi Java, penyetempatan ialah proses menyediakan rentetan yang diformat dengan betul untuk bahasa, budaya dan wilayah yang berbeza. Fungsi MessageFormat boleh mengambil kira maklumat penyetempatan. Sebagai contoh, dalam kod di bawah, kami akan menggunakan fungsi MessageFormat untuk memformat tarikh dan menjana tarikh setempat berdasarkan maklumat wilayah yang diberikan:
tahun = 2021
hari = 16; Keputusan rentetan = MessageFormat.format("Tarikh ialah {0, tarikh, MMM d, tttt}.",
new GregorianCalendar(year, month - 1, day));
Jika anda perlu memilih format yang berbeza berdasarkan nilai parameter tertentu, anda boleh menggunakan pilihan jenis format untuk memetakan nilai parameter tertentu kepada nilai lain berdasarkan nilai. julat untuk penggunaan Fungsi MessageFormat. Contohnya, dalam kod berikut, kami akan menggunakan jenis format pilihan untuk memetakan skor kepada gred:
skor berganda = 0.9;
Hasil rentetan = MessageFormat.format("Skor pelajar ini ialah. {0,bilangan ,peratus}. Grednya ialah: {0,choice,0#failure|0<60#gagal|60<70#lulus|70<80#sederhana|80<90#cemerlang|90<100#sempurna |100# Markah penuh}. ",
score);
System.out.println(result);
3. Escape pemegang tempat dan pengubah suai
Apabila menggunakan fungsi MessageFormat, aksara dengan makna khas (seperti '{', '}' dan '#') perlu menggunakan kurungan kerinting berganda "{{" dan "}} "untuk melarikan diri . Jika anda perlu mengubah suai penentu format, anda boleh menggunakan pengubah suai. Pengubah suai boleh menambah atau mengalih keluar gaya pemformatan dan menambah teks sewenang-wenangnya. Sebagai contoh, dalam kod di bawah, kami akan menggunakan pengubah suai untuk menambah tanda seru selepas output:
String name = "Xiao Ming"
String result = MessageFormat.format("Welcome, {0}!", new Object [] { nama });
System.out.println(hasil + "{0,choice,-1#?Sila semak data |0#|1#!}");
Hasil output ialah:
Selamat datang, Xiao Ming!
Dalam artikel ini, kami menerangkan cara menggunakan fungsi MessageFormat untuk pemformatan teks, termasuk penentu format, sokongan penyetempatan, memilih format dan melarikan diri pemegang tempat serta pengubah suai. Selain itu, fungsi MessageFormat juga boleh digunakan untuk memformat mesej USB, memformat halaman HTML, memformat e-mel, dsb. Untuk mendapatkan maklumat lanjut tentang cara menggunakan fungsi MessageFormat, anda boleh mengetahui lebih lanjut dengan melihat dokumentasi Java rasmi dan dokumentasi API. Fungsi MessageFormat ialah alat yang sangat praktikal dalam pengaturcaraan Java, membantu kami memformat teks dan mesej dengan lebih cekap.
Atas ialah kandungan terperinci Cara menggunakan fungsi MessageFormat dalam Java untuk pemformatan teks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!