Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Convertir vector

Estas en el tema de Convertir vector en el foro de Java en Foros del Web. Buenos dias. Tengo una consulta donde los resultados los guardo en un vector y uso las posiciones del vector para otra consulta. Al convertir el ...
  #1 (permalink)  
Antiguo 26/08/2015, 11:49
 
Fecha de Ingreso: noviembre-2009
Mensajes: 90
Antigüedad: 14 años, 5 meses
Puntos: 0
Convertir vector

Buenos dias.

Tengo una consulta donde los resultados los guardo en un vector y uso las posiciones del vector para otra consulta. Al convertir el tipo object del vector a int me da fallo.

Código:
 Vector comaborrar=new Vector();
 PreparedStatement ps = cn.prepareStatement("select id_cp from com_publicaciones where publicacion_id=?");
 ps.setInt(1, pid);
 ResultSet rs = ps.executeQuery();
 while(rs.next())
        {
            comaborrar.addElement(rs.getString(1));
        }

 for (int i =0;i<comaborrar.size();i++)
{
     int ddd = (Integer) comaborrar.elementAt(i);
     PreparedStatement ps7 = cn.prepareStatement("delete notificaciones where noti_id=?");
     ps7.setInt(1, ddd);
     ps7.executeUpdate();  
}
  #2 (permalink)  
Antiguo 26/08/2015, 15:03
Avatar de Battousaix  
Fecha de Ingreso: agosto-2015
Ubicación: Chile
Mensajes: 54
Antigüedad: 8 años, 8 meses
Puntos: 1
Respuesta: Convertir vector

Cita:
Iniciado por Borha Ver Mensaje
Buenos dias.

Tengo una consulta donde los resultados los guardo en un vector y uso las posiciones del vector para otra consulta. Al convertir el tipo object del vector a int me da fallo.

Código:
 Vector comaborrar=new Vector();
 PreparedStatement ps = cn.prepareStatement("select id_cp from com_publicaciones where publicacion_id=?");
 ps.setInt(1, pid);
 ResultSet rs = ps.executeQuery();
 while(rs.next())
        {
            comaborrar.addElement(rs.getString(1));
        }

 for (int i =0;i<comaborrar.size();i++)
{
     int ddd = (Integer) comaborrar.elementAt(i);
     PreparedStatement ps7 = cn.prepareStatement("delete notificaciones where noti_id=?");
     ps7.setInt(1, ddd);
     ps7.executeUpdate();  
}
Hola:

En Java int es una primitiva, mientras que un Entero es un Objeto.
Provaste haciendo esto??
int ddd = (int) comaborrar.elementAt(i);
o
Integer i = new Integer(anIntVariable);
int anInt = i.intValue();

Saludos
  #3 (permalink)  
Antiguo 27/08/2015, 00:44
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Convertir vector

Buenas,

En teoria la conversion Integer->int no presenta problemas ya que desde java 5 se hace autoboxing:
https://docs.oracle.com/javase/tutor...utoboxing.html

Lo que pasa es que estas guardando un String:
Código Java:
Ver original
  1. comaborrar.addElement(rs.getString(1));

Y luego estas tratando de hacer casting a un Integer:
Código Java:
Ver original
  1. int ddd = (Integer) comaborrar.elementAt(i);

O bien guardas un entero con rs.getInt() o bien convietes despues con un Integer.parseInt(omaborrar.elementAt(i));

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #4 (permalink)  
Antiguo 27/08/2015, 10:34
 
Fecha de Ingreso: noviembre-2009
Mensajes: 90
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Convertir vector

Si era eso Profesor_Falken, gracias a todos :)

Etiquetas: vector
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:42.