TutorJava Nivel Básico

Los conceptos de los canales de I/O estandard son un concepto de la librer�a C que ha sido asimilado dentro del entorno Java. Existen tres canales estandard, todos los cuales son manejados por la clase java.lang.System.

Entrada estandard --referenciado por System.in
utilizado para la entrada del programa, t�picamente lee la entrada introducida por el usuario.
Salida estandard --referenciado por System.out
utilizado para la salida del programa, t�picamente muestra informaci�n al usuario.
Error estandard --referenciado por System.err
utilizado para mostrar mensajes de error al usuario.

.�Canal de Entrada Estandard

La clase System proporciona un canal para leer texto -- el canal de entrada estandard. El programa de ejemplo de Tuercas y Tornillos del Lenguaje Java utiliza el canal del entrada estandard para contar los caracteres tecleados por el usuario.

.�Los Canales de Salida y de Error Estandards

Probablemente los puntos m�s utilizados de la clase System sean los canales de salida y de error estandard, que se utilizan para mostrarle texto al usuario.

El canal de salida estandard se utiliza normalmente para las salidas de comandos, esto es, para mostrar el resultado de un comando del usuario. El canal de error estandard se utiliza para mostrar cualquier error que ocurra durante la ejecuci�n del programa.

.�Los m�todos print(), println(), y write()

Tanto la salida estandard como el error estandard derivan de la clase PrintStream. As�, se utiliza uno de los tres m�todos de PrintStream para imprimir el texto en el canal: print(), println(), y write().

Los m�todos print() y println() son esencialmente el mismo: los dos escriben su argumento String en el canal. La �nica diferencia entre estos dos m�todos es que println() a�ade un car�cter de nueva l�nea al final de la salida, y print() no lo hace. En otras palabras, esto

System.out.print("Duke no es un Ping�ino!\n");

es equivalente a esto

System.out.println("Duke no es un Ping�ino!");

Observa el car�cter extra \n en la llamada al primer m�todo; es el car�cter para nueva l�nea. println() a�ade autom�ticamente este car�cter a su salida.

El m�todo write() es menos utilizado que los anteriores y se utiliza para escribir bytes en un canal. write() se utiliza para escribir datos que no sean ASCII.

.�Argumentos para print() y println()

Los m�todos print() y println() toman un s�lo argumento. Este argumento puede ser cualquiera de los siguientes tipos: Object, String, char[], int, long, float, double, y boolean. Adem�s existe una versi�n extra de println() que no tiene argumentos que imprime una nueva l�nea en el canal.

.�Imprimir Objetos de Diferentes Tipos de Datos

El siguiente programa utiliza println() para sacar datos de varios tipos por el canal de salida estandard.

class DataTypePrintTest {
    public static void main(String[] args) {

        Thread objectData = new Thread();
        String stringData = "Java Mania";
        char[] charArrayData = { 'a', 'b', 'c' };
        int integerData = 4;
        long longData = Long.MIN_VALUE;
        float floatData = Float.MAX_VALUE;
        double doubleData = Math.PI;
        boolean booleanData = true;

        System.out.println(objectData);
        System.out.println(stringData);
        System.out.println(charArrayData);
        System.out.println(integerData);
        System.out.println(longData);
        System.out.println(floatData);
        System.out.println(doubleData);
        System.out.println(booleanData);
    }
}

El programa anterior tendr�a esta salida.

Thread[Thread-4,5,main]
Java Mania
abc
4
-9223372036854775808
3.40282e+38
3.14159
true

Observa que se puede imprimir un objeto -- el primer println() imprime un objeto Thread y el segundo imprime un objeto String. Caundo se utilice print() o println() para imprimir un objeto, los datos impresos dependen del tipo del objeto. En el ejemplo, imprimir un String muestra el contenido de la cadena. Sin embargo, imprimir un Thread muestra una cadena con este formato.

ThreadClass[nombre,prioridad,grupo]

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP