Menu
Coddy logo textTech

String Formatting

Parte de la sección Fundamentos del Journey de Java de Coddy. Lección 69 de 73.

En Java, String.format() es un método potente utilizado para crear cadenas con formato. Permite combinar texto con variables de una manera legible y personalizable. Este método utiliza especificadores de formato para definir cómo se deben insertar las variables en la cadena.

La sintaxis básica de String.format() es:

String formattedString = String.format("format_string", arg1, arg2, ...);
  • format_string: Una cadena que contiene texto y especificadores de formato.
  • arg1, arg2, ...: Las variables que se insertarán en el format_string.

Aquí hay algunos especificadores de formato comunes:

  • %s: Inserta una cadena.
  • %d: Inserta un decimal (entero).
  • %f: Inserta un número de punto flotante.
  • %b: Inserta un valor booleano.
  • %c: Inserta un carácter.
  • %n: Inserta un carácter de nueva línea.

También puedes controlar el formato más a fondo:

  • %.2f: Formatea un número de punto flotante con 2 decimales.
  • %10s: Inserta una cadena, alineada a la derecha dentro de un campo de 10 caracteres.
  • %-10s: Inserta una cadena, alineada a la izquierda dentro de un campo de 10 caracteres.
  • %03d: Inserta un entero, rellenado con ceros a la izquierda hasta un ancho de 3 dígitos.

Aquí tienes un ejemplo:

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);
// Salida: Name: Alice, Age: 30, Price: 19.99

En este ejemplo, %s se reemplaza por name, %d por age y %.2f por price, formateado a dos lugares decimales.

challenge icon

Desafío

Fácil

Crea un método llamado createFormattedString que reciba los siguientes argumentos:

  1. Una cadena productName.
  2. Un entero quantity.
  3. Un double unitPrice.

El método debe devolver una cadena formateada que combine estos valores en el siguiente formato:

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

Formatea el unitPrice con cinco decimales y la quantity con un decimal (conviértela a double).

Por ejemplo, si productName es "laptop", quantity es 3 y unitPrice es 1299.9999, el método debe devolver:

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

Pruébalo tú mismo

import java.util.Scanner;

public class Main {
    public static String createFormattedString(String productName, int quantity, double unitPrice) {
        // Escribe tu código aquí
    }

    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 iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Java online