Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Cada una de las variables primitivas del Java tiene su correspondiente clase envolvente (wrapper class) cuyos objetos pueden almacenar un valor numrico del tipo de la variable primitiva, si bien este valor no puede ser modificado. Estos objetos se suelen utilizar para aprovechar los mtodos asociados a estos objetos que nos permiten entre otras cosas la conversin de datos de unos tipos primitivos a otros, o desde una cadena de caracteres a un numrico y viceversa. Igualmente se utilizan en las colecciones de datos de tipo Vector, Stack y Hashtable que slo pueden contener objetos. Las clases envolventes son Integer, Boolean, Character, Long, Float y Double; como se puede observar, tienen nombres similares a los tipos primitivos y estn escritos con la primera letra en mayscula. A continuacin se recogen ejemplos de sentencias de creacin de objetos de las clases envolventes de primitivas:
Integer entero = new Integer(45); Boolean esCierto = new Boolean (false); Character letra = new Character ('\u000b'); long enteroLargo = new Long( valor); Float realSmple = new Float( valor); Double realDoble = new Double( valor);
En la siguiente tabla se recogen los mtodos ms utilizados de las clases envolventes. Losmtodosparselnt (), parseLong(), parseByte (), parseShort (), parseFloat () y parseDouble () permiten obtener los correspondientes valores numricos a partir de una cadena de caracteres. Las diferentes versiones (sobrecargados) del mtodo toString() nos permiten obtener una cadena de caracteres del valor numrico dado como argumento. El mtodo valueOf() en sus diferentes versiones nos permite obtener objetos de la clase a la que pertenezca, tomado como valor de la cadena de caracteres recogida como argumento
Las clases envolventes nos permitirn, a travs de los mtodos que heredan, realizar operaciones de conversin, por ejemplo, convertir una cadena de caracteres en una variable numrica, o viceversa. As por ejemplo la sentencia: numerol = Double.parseDouble(texto); Un objeto de la clase envolvente no puede modificarse, por lo que se usan, casi exclusivamente, como objeto auxiliar de alguna conversin, o bien cuando se desean archivar datos numricos en listas que slo admiten referencias a objetos.
La sentencia: int ao = Integer.parselnt("123"); Crea un objeto de tipo Integer y retorna su valor como nmero entero que se asigna la variable primitiva ao. Desde la versin del Java (J2SE5), la conversin entre valores de variables primitivas y las correspondientes clases envolventes se realiza de una forma automtica sin necesidad de recurrir la conversin con los mtodos intValue, doubleValue, longValue etc. El cdigo: Integer i= new Integer(12); int a=i; System.out.println("valor: "+a) ; Dara error en versiones anteriores, si bien en la versin actual la conversin a = i es posible.