Sei sulla pagina 1di 3

Clases envolventes de las variables numricas primitivas

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

Mtodos principales de las clases envolventes.


Nombre del Mtodo Int parseInt(String s) String toString(int i) Integer valueOf (String s) double parseDouble (String s) String toString (long i) Long valueOf (String s) Byte parseByte(String s) String toString(byte b) Byte valueOf(String s) Short parseShort (String s) String toString(Short s) Short valueOf(String s) Float parseFloat(String s) String toString(float f) Float valueOf(String s) String toStringDouble(double d) Double valueOf(String s) Tarea que realiza Permite obtener el valor entero de una cadena de caracteres. Permite convertir un valor entero en una cadena de caracteres. Obtiene un objeto de tipo Integer con el valor de la cadena de caracteres. Nos permite obtener el valor de tipo doubl de una cadena de caracteres permite obtener el valor de tipo entero en una cadena de caracteres permite obtener el valor de tipo long con el valor de una cadena de caracteres Permite convertir una cadena de caracteres en un entero de tipo byte. Permite convertir una cadena de caracteres en un entero de tipo byte. Obtiene un objeto de tipo Byte con el valor de la cadena de caracteres Permite obtener el valor entero de tipo short de una cadena de caracteres permite convertir un valor entero de tipo short de una cadena de caracteres Obtiene un objeto de tipo Short con el valor de la cadena de caracteres Permite obtener el valor numrico decimal de tipo float de una cadena de caracteres Genera una cadena de caracteres con un valor numrico de tipo float. Obtiene un objeto de tipo Float con el valor de una cadena de caracteres. Obtiene una cadena de caracteres con un valor numrico de tipo doubl Obtiene un objeto de tipo Double con el valor de la cadena de caracteres

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.

Potrebbero piacerti anche