Problemas con un cast

mario
09 de Mayo del 2006
Hola a todos, me surge un problemilla con un cast que no sé cómo solucionar, por lo que agradecería vuestra ayuda: Tengo definida una variable de tipo Vector, algunos de cuyos elementos también son de tipo Vector, del siguiente modo:
Vector medidas=new Vector(0,1);
Vector elemento=new Vector(5); //sus componentes son Integer
medidas.addElement(elemento);
Si la variable medidas se pasa como parámetro de un constructor de otra clase, cómo recupero el elemento? En dicho constructor defino otra variable Vector, de modo que hago:
mielemento=(Vector)parametro.elementAt(0);
Pero eso me da una excepción porque ese Cast no está permitido, cómo puedo pasar del Object que me devuelve elementAt a tener un Vector? Y es que lo mismo ocurre al intentar recuperar los valores Integer, que es con lo que realmente necesito trabajar...
No sé si me he explicado bien... Gracias por vuestro tiempo

Diego
09 de Mayo del 2006
Pásate a java 1.5(y a ArrayList, más eficiente que Vector si no necesitas sincronización):
ArrayList<ArrayList<Integer>> medidas=new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> elem=new ArrayList<Integer>();
medidas.add(elem);
Espero que te sirva.

sandra
09 de Mayo del 2006
A mi me ocurre lo mismo, y con un ArrayList también... Tendrá que ver con la versión de java? yo uso la 1.4.2, que es la última para mac os x 1.3. Gracias!!

neo
09 de Mayo del 2006
lo que bedes ahcer es preguntar que tipo de objeto te retorna o se ubica en la posicio X de tu vector luego deso la casteas;ej:

if(array(i) instanceof Integer)
entero=(Integer)array.get(i)
else
vector=(Vector)array.get(i);

Espero sea de ayuda