Kita harus membuat Strings setiap saat untuk keluaran log dan sebagainya. Lebih dari versi JDK kami telah belajar kapan harus menggunakan StringBuffer
(banyak menambahkan, aman thread) dan StringBuilder
(banyak menambahkan, aman non-thread).
Apa saran untuk menggunakan String.format()
? Apakah efisien, atau apakah kita dipaksa untuk tetap dengan penggabungan satu baris di mana kinerja itu penting?
misalnya gaya lama yang jelek,
String s = "What do you get if you multiply " + varSix + " by " + varNine + "?";
vs. merapikan gaya baru (String.format, yang mungkin lebih lambat),
String s = String.format("What do you get if you multiply %d by %d?", varSix, varNine);
Catatan: kasus penggunaan spesifik saya adalah ratusan string log 'satu-liner' di seluruh kode saya. Mereka tidak melibatkan lingkaran, jadi StringBuilder
terlalu berat. Saya tertarik secara String.format()
khusus.