
14/02/2008, 09:55
|
 | | | Fecha de Ingreso: enero-2008
Mensajes: 11
Antigüedad: 17 años, 1 mes Puntos: 0 | |
Re: pasar Object a Float Hola!!!
La verdad es que deberías especificar un poco más qué es lo que tienes almacenado en la variable del tipo Object ....
Las instrucciones:
Object un_objeto;
Float un_float = (Float) un_objeto;
No siempre son válidas ... de hecho lanzan un error en tiempo de ejecución ... al tratar de hacer la conversión dependiendo de la clase a la cual pertenece el contenido de 'un_objeto' ...
Mira la siguiente porción de código:
Object uno;
Float un_float;
uno = new Integer("29");
if (uno instanceof Float)
{
un_float = (Float) uno;
System.out.println(un_float);
}
else System.out.println("Conversion NO realizada");
En este caso no se puede realizar la conversión ... estamos comprobando el tipo de instancia que se encuentra almacenada en la variable 'un_objeto' ... la gente de Sun no recomienda mucho el uso del operador instanceof ... y muchas veces es mejor manejar estas situaciones usando excepciones y nos quedaría de la siguiente forma:
/* Ahora usando excepciones */
Object uno;
uno = new Integer("29");
try
{
un_float = (Float) uno;
}
catch(ClassCastException e)
{
System.out.println("Conversion NO realizada " + e);
}
la línea uno = new Integer("29"); la puedes cambiar por lo que sea ... y al tratar de traspasar a Float el manejo de excepciones se encargará del error ....
En realidad, como se decía en el post anterior es todo lo que se puede deducir que pretender hacer ... quizás si das más detalles podemos ayudarte un poco más
Que estes bien
Bye |