Menu
Coddy logo textTech

Formatowanie ciągów znaków

Część sekcji Podstawy ścieżki Java w Coddy. Lekcja 69 z 73.

W Javie String.format() to potężna metoda służąca do tworzenia sformatowanych ciągów znaków. Pozwala łączyć tekst ze zmiennymi w czytelny i konfigurowalny sposób. Ta metoda używa specyfikatorów formatu, aby określić, jak zmienne powinny być wstawiane do ciągu znaków.

Podstawowa składnia String.format() to:

String formattedString = String.format("format_string", arg1, arg2, ...);
  • format_string: Ciąg znaków zawierający tekst i specyfikatory formatu.
  • arg1, arg2, ...: Zmienne, które należy wstawić do format_string.

Oto kilka popularnych specyfikatorów formatu:

  • %s: Wstawia ciąg znaków.
  • %d: Wstawia liczbę dziesiętną (całkowitą).
  • %f: Wstawia liczbę zmiennoprzecinkową.
  • %b: Wstawia wartość logiczną.
  • %c: Wstawia znak.
  • %n: Wstawia znak nowej linii.

Możesz także dokładniej kontrolować formatowanie:

  • %.2f: Formatuje liczbę zmiennoprzecinkową z 2 miejscami po przecinku.
  • %10s: Wstawia ciąg znaków wyrównany do prawej w polu o szerokości 10 znaków.
  • %-10s: Wstawia ciąg znaków wyrównany do lewej w polu o szerokości 10 znaków.
  • %03d: Wstawia liczbę całkowitą uzupełnioną zerami z przodu do szerokości 3 cyfr.

Oto przykład:

String name = "Alice";
int age = 30;
double price = 19.99;

String formatted = String.format("Name: %s, Age: %d, Price: %.2f", name, age, price);
System.out.println(formatted);
// Wynik: Name: Alice, Age: 30, Price: 19.99

W tym przykładzie %s zostaje zastąpione przez name, %d przez age, a %.2f przez price, sformatowane do dwóch miejsc po przecinku.

challenge icon

Wyzwanie

Łatwy

Utwórz metodę o nazwie createFormattedString, która przyjmuje następujące argumenty:

  1. Łańcuch znaków productName.
  2. Liczbę całkowitą quantity.
  3. Wartość typu double unitPrice.

Metoda powinna zwrócić sformatowany łańcuch znaków, który łączy te wartości w następującym formacie:

Product: [productName], Quantity: [quantity], Unit Price: [unitPrice]

Sformatuj unitPrice do pięciu miejsc po przecinku, a quantity do jednego miejsca po przecinku (przekonwertuj ją na typ double).

Na przykład, jeśli productName ma wartość "laptop", quantity ma wartość 3, a unitPrice ma wartość 1299.9999, metoda powinna zwrócić:

Product: laptop, Quantity: 3.0, Unit Price: 1299.99990

Spróbuj swoich sił

import java.util.Scanner;

public class Main {
    public static String createFormattedString(String productName, int quantity, double unitPrice) {
        // Wpisz tutaj swój kod
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String product = scanner.nextLine();
        int qty = scanner.nextInt();
        double price = scanner.nextDouble();
        String formattedString = createFormattedString(product, qty, price);
        System.out.println(formattedString);
    }
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Java online