Retroceder   Foros del Web > Programación para sitios web > Java y JSP

Respuesta
 
Herramientas Desplegado
Antiguo 13-feb-2008, 10:56   #1 (permalink)
celta_ ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2007
Mensajes: 14
pasar Object a Float

muy buenas a todos.

¿Alguno sabe pasar un Object a Float mediante algun método?, lo intenté con el Float.parseFloat(), pero me di cuenta que solo me lo permitia con cadenas


Un saludo y gracias por adelantado
celta_ está desconectado   Responder Citando
Antiguo 14-feb-2008, 06:12   #2 (permalink)
AlitoXxX ha deshabilitado el karma
 
Fecha de Ingreso: enero-2008
Mensajes: 160
Re: pasar Object a Float

Lo que vos hiciste es querer transformar un Object en un PRIMITIVO float, ya que ese método que recibe una cadena devuelve un float primitivo, no un Float.
No sé muy bien lo que querrás hacer, pero en teoría, y en base a suposiciones mías, lo que tenés que hacer es un casting normal:

Float variable=(Float) variableObject;

No sé si servirá, pero es todo lo que puedo suponer con tu explicación.
AlitoXxX está desconectado   Responder Citando
Antiguo 14-feb-2008, 08:55   #3 (permalink)
GhostGirl ha deshabilitado el karma
 
Avatar de GhostGirl
 
Fecha de Ingreso: enero-2008
Mensajes: 11
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
GhostGirl está desconectado   Responder Citando
Antiguo 15-feb-2008, 02:48   #4 (permalink)
celta_ ha deshabilitado el karma
 
Fecha de Ingreso: octubre-2007
Mensajes: 14
Re: pasar Object a Float

wenas a todos. me intentaré explicar mejor. Lo que tengo es una tabla en el q todos los elementos que contiene la tabla son de tipo Object, y tengo que sacar los elementos de una columna que son todos numeros reales y los tengo que sumar cada vez que se varie la tabla para calcular el total de la columna. Mas o menos es eso.

Ya intenté las opciones que me habeis dado y lo q comentabas antes, me da un error en ejecucion, Ando buscando alguna slucion, si la encuentro ya os avisaré.

Un saludo y gracias a todos
celta_ está desconectado   Responder Citando
Antiguo 15-feb-2008, 04:47   #5 (permalink)
GreenEyed tiene algunos puntos positivos de karma
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.437
Re: pasar Object a Float

Una tabla con elementos de tipo Object... no te refieres a una tabla de BDD, ¿no? ¿O es una BDD orientada a objetos?

De todas formas, una cosa es que el metodo de obtener lo que hay en una celda o el "almacenamiento" sea generico declarado como Object, y otra cosa diferente es la clase del Objeto en si. Dudo que tus numero reales esten almacenados solo como Object, seguramente seran Float o similar.

S!
__________________
TAANSTAFL - Para obtener respuestas inteligentes, lo mejor es empezar por preguntar de forma inteligente.
GreenEyed está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Desactivado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 21:55.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93