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

[SOLUCIONADO] Convertir ArrayList en Array bidimensional

Estas en el tema de Convertir ArrayList en Array bidimensional en el foro de Java en Foros del Web. Duda de principiante, pero parece ser que se me resiste: Bueno, tengo un ArrayList con valores alternos, resultado de una consulta que me ha dado ...
  #1 (permalink)  
Antiguo 13/04/2015, 08:06
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 12 años, 7 meses
Puntos: 31
Convertir ArrayList en Array bidimensional

Duda de principiante, pero parece ser que se me resiste:

Bueno, tengo un ArrayList con valores alternos, resultado de una consulta que me ha dado valores de campo1 y campo2, de forma que ahora mi ArrayList contiene:

miArrayList{valorCampo1,valorCampo2,valorCampo1,va lorCampo2.... etc}

Necesito tener estos valores en un Array bidimensional, de forma que en una dimensión se almacenen todos los valorCampo1 y en el otro todos los valorCampo2.

Después tener completo mi miArrayList ya conozco la dimensión exacta de mi Array, y por lo tanto lo inicializo a:

String[][] miArray = new String[miArrayList.size()/2][2];

Y a continuación es cuando tengo mi problema para ir pasando los valores.

miArrayList(0) ----> miArray[0][0]
miArrayList(1) ----> miArray[0][1]
miArrayList(2) ----> miArray[1][0]
miArrayList(3) ----> miArray[1][1]
miArrayList(4) ----> miArray[2][0]
miArrayList(5) ----> miArray[2][1]
etc...

Con los intentos que he hecho... o me dejo los 2 últimos valores sin introducir en el Array, o me salgo del rango del ArrayList, o me salgo del rango del Array. No acierto con la fórmula exacta.
  #2 (permalink)  
Antiguo 13/04/2015, 08:21
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 12 años, 7 meses
Puntos: 31
Respuesta: Convertir ArrayList en Array bidimensional

Solucionado. Me auto-respondo:

for(int i=0; i<miArrayList.size()/2;i++){
miArray[i][0]=miArrayList.get(i*2);
miArray[i][1]=miArrayList.get(i*2+1);
}

Etiquetas: arraylist, string, valor
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 18:15.