Menu
Coddy logo textTech

Fortgeschrittene String-Formatierung

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

Die String-Formatierung in Java ermöglicht es dir, formatierte Strings mithilfe von Formatspezifizierern zu erstellen. Die häufigsten sind %s für Strings, %d für Integer und %.2f für Dezimalzahlen.

Eine Zeichenkette mit mehreren Werten formatieren:

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

Erstelle eine Methode namens formatData, die vier Argumente entgegennimmt:

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

Die Methode soll 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 sollen mit genau 2 Dezimalstellen formatiert werden.

Rückgabemeldung:

  • Wenn eine Eingabe null ist oder ein ungültiges Format vorliegt: return "Invalid input"

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

Übe selbstständig: Online-Java-Compiler