0Pricing
Java Academy · Lección

Formatos numéricos y decimales

Ancho, precisión y relleno

Formatos numéricos y decimales es una lección gratuita de Java Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Java Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Java Academy incluye 4 lecciones en total.

Dar formato a números

Los números suelen necesitar un tratamiento especial: un número fijo de decimales, relleno o un signo. Los especificadores de printf le proporcionan ese control.

Esta lección se centra en %d para números enteros y %f para valores de coma flotante.

El especificador %f

%f da formato a un número de coma flotante, como un double o un float.

De forma predeterminada, %f muestra seis dígitos después del punto decimal, lo que normalmente es más de lo necesario.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%f\n", 3.14);
    }
}

Controlar los decimales con .2

Añada una precisión como .2 entre % y f para limitar los decimales. %.2f significa «dos dígitos después del punto».

El valor se redondea, no se corta simplemente.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%.2f\n", 3.14159);
    }
}

Redondeo con printf

La precisión redondea al valor más cercano. %.0f no muestra ningún decimal y redondea a un número entero.

Tenga en cuenta que esto solo cambia la forma en que se muestra el número, no el valor almacenado.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%.0f\n", 2.7);
    }
}

Ejemplo con dinero

Las cantidades monetarias casi siempre usan dos decimales. %.2f es perfecto para los precios.

Combínelo con texto para crear una línea clara.

public class Main {
    public static void main(String[] args) {
        double price = 9.5;
        System.out.printf("Total: $%.2f\n", price);
    }
}

Ancho mínimo

Un número entre % y la letra establece un ancho mínimo. %5d imprime el número entero en un campo de al menos 5 caracteres de ancho, con espacios a la izquierda.

Este es el primer paso para alinear columnas.

public class Main {
    public static void main(String[] args) {
        System.out.printf("[%5d]\n", 42);
    }
}

Ancho con decimales

El ancho y la precisión se combinan: %8.2f significa «al menos 8 caracteres de ancho, con 2 decimales».

El ancho cuenta los dígitos, el punto decimal y los espacios de relleno.

public class Main {
    public static void main(String[] args) {
        System.out.printf("[%8.2f]\n", 3.5);
    }
}

Relleno con ceros

Coloque un 0 justo después de % para rellenar con ceros en lugar de espacios. %05d rellena el lado izquierdo con ceros.

Es ideal para identificadores de longitud fija o cifras de reloj como 09.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%05d\n", 42);
    }
}

Separador de miles

La bandera de coma %,d agrupa los dígitos con separadores, lo que facilita la lectura de números grandes.

También funciona con %f, por ejemplo, %,.2f.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%,d\n", 1000000);
    }
}

Mostrar el signo más

La bandera + fuerza un signo inicial incluso para los números positivos. %+d imprime +5 en lugar de 5.

Es útil para mostrar claramente las ganancias y las pérdidas.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%+d and %+d\n", 5, -3);
    }
}

Hexadecimal con %x

Además de los números decimales, %x imprime un número entero en hexadecimal y %o en octal.

Usará principalmente %d y %f, pero conviene saber que existen otras bases numéricas.

public class Main {
    public static void main(String[] args) {
        System.out.printf("%x\n", 255);
    }
}

Comprobación rápida

Elija el especificador adecuado.

Resumen

Ahora puede controlar los decimales con %.2f, establecer anchos como %5d, rellenar con ceros mediante %05d, agrupar con %,d y forzar signos con %+d.

A continuación capturará texto con formato en un String.

Preguntas frecuentes

¿La lección «Formatos numéricos y decimales» es gratis?

Sí — el texto completo de «Formatos numéricos y decimales» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Java Academy, actualiza a CoddyKit PRO. El curso de Java Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Formatos numéricos y decimales»?

Ancho, precisión y relleno Practicas Java Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Java Academy?

No se requiere experiencia previa. Java Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Formatos numéricos y decimales»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Java Academy?

Sí. Cada lección de Java Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos de printf
  2. Formatos numéricos y decimales
  3. String.format
  4. Alineación de tablas
← Volver a Java Academy