Menu
Coddy logo textTech

String Formatting

Часть раздела Основы путешествия по Java на Coddy — урок 69 из 73.

В Java String.format() — это мощный метод, используемый для создания форматированных строк. Он позволяет объединять текст с переменными понятным и настраиваемым способом. Этот метод использует спецификаторы формата, чтобы определить, как переменные должны быть вставлены в строку.

Базовый синтаксис String.format():

String formattedString = String.format("format_string", arg1, arg2, ...);
  • format_string: Строка, содержащая текст и спецификаторы формата.
  • arg1, arg2, ...: Переменные, которые будут вставлены в format_string.

Вот несколько распространенных спецификаторов формата:

  • %s: Вставляет строку.
  • %d: Вставляет десятичное число (целое число).
  • %f: Вставляет число с плавающей запятой.
  • %b: Вставляет логическое значение.
  • %c: Вставляет символ.
  • %n: Вставляет символ новой строки.

Вы также можете дополнительно управлять форматированием:

  • %.2f: Форматирует число с плавающей запятой с 2 знаками после запятой.
  • %10s: Вставляет строку, выровненную по правому краю в поле из 10 символов.
  • %-10s: Вставляет строку с выравниванием по левому краю в поле шириной 10 символов.
  • %03d: Вставляет целое число, дополненное ведущими нулями до ширины в 3 цифры.

Вот пример:

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);
// Вывод: Name: Alice, Age: 30, Price: 19.99

В этом примере %s заменяется на name, %d на age, а %.2f на price, отформатированное до двух знаков после запятой.

challenge icon

Задание

Легко

Создайте метод с именем createFormattedString, который принимает следующие аргументы:

  1. Строку productName.
  2. Целое число quantity.
  3. Число с плавающей точкой (double) unitPrice.

Метод должен возвращать отформатированную строку, объединяющую эти значения в следующем формате:

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

Отформатируйте unitPrice до пяти знаков после запятой, а quantity — с одним знаком после запятой (преобразуйте его в double).

Например, если productName имеет значение "laptop", quantity равно 3, а unitPrice равно 1299.9999, метод должен вернуть:

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

Попробуйте сами

import java.util.Scanner;

public class Main {
    public static String createFormattedString(String productName, int quantity, double unitPrice) {
        // Напишите свой код здесь
    }

    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 iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы