es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Llena el ArrayList de Collections con múltiples valores, no el mismo valor.

Estoy usando Android Studio donde tengo un arreglo con tamaño de 126, y inicialmente los lleno con 0’s. Luego tengo una entrada con tamaño de 63, quiero que “reemplace” los primeros 126 valores, en lugar de agregar 63 a los 126.

Por ejemplo, tengo un arreglo de longitud 5 ( [0,0,0,0,0] ). Luego ingreso 1, 2, 3 como individuos. Quiero que se vea así [1,2,3,0,0] en lugar de [0,0,0,0,0,1,2,3]

Código de ejemplo:

ArrayList<float> list = new ArrayList<float>(Collections.nCopies(126, Float.valueOf(0)));

Luego añado mediante:
for (int j = 0; j < loop; j++) {
float xx = result.multiHandLandmarks().get(i).getLandmark(j).getX();
floaat yy = result.multiHandLandmarks().get(i).getLandmark(j).getY();
float zz = result.multiHandLandmarks().get(i).getLandmark(j).getZ();
list.add(xx);
list.add(yy);
list.add(zz);
}

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para reemplazar los valores iniciales en el arreglo en lugar de agregar a ellos, simplemente puedes usar un bucle para reemplazar los valores en el arreglo con los valores en el arreglo de entrada.

    Aquí tienes un ejemplo de código:

    ArrayList<float> lista = new ArrayList<float>(Collections.<float>nCopies(126, Float.valueOf(0)));
    float[] entrada = {1, 2, 3};
    for (int i = 0; i < entrada.length && i < lista.size(); i++) {
        lista.set(i, entrada[i]);
    }
    

    En este código, primero creamos un ArrayList con un tamaño de 126 y valores iniciales establecidos en 0. Luego definimos el arreglo de entrada con un tamaño de 63 y valores 1, 2 y 3. Luego recorremos el arreglo de entrada y establecemos los primeros 3 valores de la lista con los valores del arreglo de entrada, reemplazando así los valores iniciales en la lista.

    Nota que si el arreglo de entrada es más grande que la lista, solo se utilizarán los primeros 126 valores del arreglo de entrada para reemplazar los valores en la lista.

Comments are closed.