Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/02/2008, 09:55
Avatar de GhostGirl
GhostGirl
 
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