El método printf(String, Object) de la clase Consola en Java se usa para escribir una string formateada en el flujo de salida de la consola. Utiliza la string de formato y los argumentos especificados. Es un método de conveniencia.
Sintaxis:
public Console printf(String fmt, Object... args)
Parámetros: Este método acepta dos parámetros:
- fmt – Representa el formato de la string.
- args : representa los argumentos a los que hacen referencia los especificadores de formato en el formato de string.
Valor devuelto: este método devuelve la consola.
Excepciones: este método lanza IllegalFormatException si el formato de string contiene una sintaxis ilegal o un especificador de formato no es compatible con los argumentos proporcionados o los argumentos son insuficientes dada la string de formato u otras condiciones que son ilegales.
Nota: System.console() devuelve nulo en un IDE en línea.
Los siguientes programas ilustran el método printf(String, Object) en la clase Console en el paquete IO:
Programa 1:
// Java program to illustrate // Console printf(String, Object) method import java.io.*; public class GFG { public static void main(String[] args) { // Create the console object Console cnsl = System.console(); if (cnsl == null) { System.out.println( "No console available"); return; } String fmt = "%1$4s %2$10s %3$10s%n"; cnsl.printf(fmt, "Books", "Author", "Price"); cnsl.printf(fmt, "-----", "------", "-----"); cnsl.printf(fmt, "DBMS", "Navathe", "800"); cnsl.printf(fmt, "Algorithm", "Cormen", "925"); cnsl.printf(fmt, "Operating System", "Rajib Mall", "750"); } }
Programa 2:
// Java program to illustrate // Console printf(String, Object) method import java.io.*; public class GFG { public static void main(String[] args) { // Create the console object Console cnsl = System.console(); if (cnsl == null) { System.out.println( "No console available"); return; } String fmt = "%1$4s %2$10s %3$10s%n"; cnsl.printf(fmt, "Items", "Quantity", "Price"); cnsl.printf(fmt, "-----", "------", "-----"); cnsl.printf(fmt, "Tomato", "1 Kg", "80"); cnsl.printf(fmt, "Apple", "3 Kg", "500"); cnsl.printf(fmt, "Potato", "2 Kg", "75"); } }
Referencias:
https://docs.oracle.com/javase/10/docs/api/java/io/Console.html#printf(java.lang.String, java.lang.Object…)