"Saya juga ingin memberi tahu Anda tentang metode String.format ."

"Ini adalah metode statis dari kelas String , tetapi sangat berguna. Biarkan saya mengambil pendekatan memutar."

"Jika Anda perlu menampilkan beberapa variabel pada satu baris teks, bagaimana Anda melakukannya?"

"Teks apa?"

"Ini, misalnya:"

Diberikan variabel berikut:
String name = "Bender";
int age = 12;
String friend = "Fry";
int weight = 200;
Keluaran yang diperlukan:
User = {name: Bender, age: 12 years, friend: Fry, weight: 200 kg.}

"Saya akan melakukannya seperti ini:"

String name = "Bender";
int age = 12;
String friend = "Fry";
int weight = 200;

System.out.println("User = {name: " + name + ", age: " + age + " years, friend: " + friend + ", weight: " + weight + " kg.}");

"Tidak terlalu bisa dibaca, bukan?"

"Saya pikir tidak apa-apa."

"Tetapi jika Anda memiliki nama variabel yang panjang atau Anda perlu memanggil metode untuk mendapatkan data, maka itu tidak akan mudah dibaca:"

System.out.println("User = {name: " + user.getName() + ", age: " + user.getAge() + " years, friend: " + user.getFriends().get(0) + ", weight: " + user.getExtraInformation().getWeight() + " kg.}");

"Yah, kalau begitu, ya, itu tidak akan mudah dibaca."

"Faktanya adalah hal ini selalu terjadi dalam program nyata, jadi saya ingin menunjukkan kepada Anda bagaimana Anda dapat menyederhanakan hidup Anda dengan metode String.format."

"Tolong beritahu saya dengan cepat, metode magis macam apa ini?"

"Anda dapat menulis kode di atas seperti ini:"

String text = String.format("User = {name: %s, age: %d years, friend: %s, weight: %d kg.}",
user.getName(), user.getAge(), user.getFriends().get(0), user.getExtraInformation().getWeight())

System.out.println(text);

" Parameter pertama metode String.format adalah string format yang berisi karakter khusus (%s, %d) di mana pun kita ingin meletakkan nilai."

"Setelah memformat string, kami meneruskan nilai yang akan menggantikan karakter %s dan %d."

"Jika kita perlu memasukkan string, maka kita menulis %s; jika kita membutuhkan angka, maka kita menggunakan %d."

"Akan lebih mudah untuk melihat ini dalam contoh:"

Contoh
String s = String.format("a = %d, b = %d, c = %d", 1, 4, 3);
Hasil:
s akan sama dengan «a = 1, b = 4, c = 3»

"Ya, itu sangat nyaman."

"Dan kamu juga bisa melakukannya seperti ini:"

Contoh
int a = -1, b = 4, c = 3;
String template;
 if (a < 0)
  template = "Warning! a = %d, b = %d, c = %d";
 else
  template = "a = %d, b = %d, c = %d";

System.out.println(String.format(template, a, b, c) );
Keluaran:
Warning! a = -1, b = 4, c = 3

"Hmm. Itu metode yang sangat berguna. Terima kasih, Ellie."

"Jika Anda ingin menggunakan tipe data lain dengan metode format, inilah tabel yang akan membantu:"

Simbol Jenis
%S Rangkaian
%D bilangan bulat: int, panjang, dll.
%F bilangan real: mengambang, ganda
%B boolean
%C arang
%T Tanggal
%% Tanda persen %

"Sebenarnya, penentu format ini juga memiliki setelan dan subsetnya sendiri."

"Tapi ini cukup untuk membantu Anda memulai. Jika tidak, ini tautan ke dokumentasi resmi:"

Tautan ke materi tambahan