Pemformatan String Lanjutan
Termasuk bagian Logika & Alur dalam perjalanan Java di Coddy. Pelajaran 49 dari 59.
Formatting string di Java memungkinkan kamu membuat string berformat menggunakan penentu format. Penentu yang paling umum adalah %s untuk string, %d untuk bilangan bulat, dan %.2f untuk bilangan desimal.
Format string dengan beberapa nilai:
String name = "John";
int age = 25;
String text = String.format("Name: %s, Age: %d", name, age);Setelah menjalankan kode di atas, text berisi:
Name: John, Age: 25
Format angka desimal dengan presisi:
double price = 19.99;
String formatted = String.format("Price: $%.2f", price);Setelah menjalankan kode di atas, formatted berisi:
Price: $19.99
Tantangan
MudahBuat method bernama formatData yang menerima empat argumen:
- Sebuah String (
name) untuk nama produk - Sebuah double (
price) untuk harga produk - Sebuah integer (
quantity) untuk jumlah - Sebuah String (
format) untuk jenis format output
Method tersebut harus memformat data berdasarkan jenis berikut:
- "basic": return "ITEM: {name}, PRICE: ${price}"
- "detailed": return "PRODUCT: {name}\nPRICE: ${price}\nQUANTITY: {quantity}"
- "total": return "TOTAL FOR {quantity}x {name}: ${total}" (total = price * quantity)
Semua harga harus diformat dengan tepat 2 angka desimal.
Pesan yang dikembalikan:
- Jika ada input yang null atau format tidak valid: return "Invalid input"
Coba sendiri
import java.util.Scanner;
public class Main {
public static String formatData(String name, double price, int quantity, String format) {
// Tulis kodemu di sini
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
double price = Double.parseDouble(scanner.nextLine());
int quantity = Integer.parseInt(scanner.nextLine());
String format = scanner.nextLine();
if (name.equals("null")) name = null;
if (format.equals("null")) format = null;
System.out.println(formatData(name, price, quantity, format));
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
1Array Multidimensi
Dasar Array 2DMengakses Elemen Array 2DLoop Bersarang dengan Array 2DRangkuman: Array 2DPenjumlahan dan Pengurangan MatriksArray BergerigiArray 3D dan Lebih JauhPola Umum Array 2DRangkuman: Semua tentang Array2HashMap Bagian 1
Apa itu HashMap?Deklarasikan HashMapMengakses nilaiPeriksa apakah key adaMengubah dictionaryRingkasan: HashMap5HashSet Bagian 2
Matematika: Gabungan HashSetMatematika: Irisan HashSetMatematika: Selisih HimpunanMatematika: Beda SimetrisHimpunan Bagian dan SuperhimpunanMelakukan Iterasi pada set8Operasi String Lanjutan
Dasar StringBuilderPengenalan StringBufferDasar Ekspresi RegulerPencocokan Pola dengan RegexString TokenizerPemformatan String Lanjutan3HashMap Bagian 2
Method HashMapIterasi dengan keySet()Iterasi dengan entrySet()HashMap BersarangRangkuman: Kelola GudangRangkuman: Operasi HashMap6Alur Kontrol Lanjutan
Pernyataan LabelEkspresi SwitchPencocokan PolaKlausa PenjagaRingkasan Alur Kontrol9Proyek: Penghitung Kata Unik
Input dan Penyimpanan TeksPemrosesan KataLatihan sendiri: Compiler Java online