Menu
CoddyTech

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

challenge icon

Tantangan

Mudah

Buat method bernama formatData yang menerima empat argumen:

  1. Sebuah String (name) untuk nama produk
  2. Sebuah double (price) untuk harga produk
  3. Sebuah integer (quantity) untuk jumlah
  4. 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));
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika & Alur

Latihan sendiri: Compiler Java online