Menu
Coddy logo textTech

Fortgeschrittene String-Formatierung

Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 49 von 59.

String-Formatierung in Java ermöglicht es Ihnen, formatierte Strings mit Formatangaben zu erstellen. Die häufigsten sind %s für Strings, %d für Ganzzahlen und %.2f für Dezimalzahlen.

Formatieren Sie einen String mit mehreren Werten:

String name = "John";
int age = 25;
String text = String.format("Name: %s, Age: %d", name, age);

Nach der Ausführung des obigen Codes enthält text:

Name: John, Age: 25

Dezimalzahlen mit Präzision formatieren:

double price = 19.99;
String formatted = String.format("Price: $%.2f", price);

Nach der Ausführung des obigen Codes enthält formatted:

Price: $19.99

challenge icon

Aufgabe

Einfach

Erstellen Sie eine Methode namens formatData, die vier Argumente annimmt:

  1. Ein String (name) für den Produktnamen
  2. Ein double (price) für den Produktpreis
  3. Ein Integer (quantity) für die Menge
  4. Ein String (format) für den Ausgabeformattyp

Die Methode sollte die Daten basierend auf diesen Typen formatieren:

  • "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) Alle Preise sollten mit genau 2 Dezimalstellen formatiert werden.

Rückgabenachricht:

  • Wenn irgendein Input null oder ungültiges Format ist: return "Invalid input"

Spickzettel

Die String-Formatierung in Java verwendet Format-Spezifizierer mit String.format():

  • %s für Strings
  • %d für Ganzzahlen
  • %.2f für Dezimalzahlen mit 2 Dezimalstellen

Formatieren von Strings mit mehreren Werten:

String name = "John";
int age = 25;
String text = String.format("Name: %s, Age: %d", name, age);
// Result: "Name: John, Age: 25"

Formatieren von Dezimalzahlen mit Präzision:

double price = 19.99;
String formatted = String.format("Price: $%.2f", price);
// Result: "Price: $19.99"

Probier es selbst

import java.util.Scanner;

public class Main {
    public static String formatData(String name, double price, int quantity, String format) {
        // Schreibe deinen Code hier
    }
    
    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 iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf