Java - Añadir datos a la primera posición vacia de array

 
Vista:
Imágen de perfil de jose
Val: 64
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Añadir datos a la primera posición vacia de array

Publicado por jose (73 intervenciones) el 01/11/2018 19:40:16
Buenas tardes,

Estoy haciendo un módulo de una clase en java, donde inserte datos en una array en la primera posición que esté vacía.

Lo que me ocurre es que repite todo el bucle y acaba añadiendo los mismos datos a todo el array.

Me gustaría que parase el bucle en cuanto añada un elementos del array en la primera posición vacía.

Lo que quiero del bucle for es que encuentre la primera posición. Y sea hay donde guarde los datos. He utlizado un contador pero al estar dentro del bucle cambiar también de valor.

Si alguién me puede ayudar lo agradecería.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public void afegirProducte(String pCodiProducte, String pDescripcio, int pPvp, String[][] productes) {
		// S’afegiran les dades Codi Producte, Descripció i PVP en l’array “productes”
		String StPVP = null;
		int contador = 0;
		for (int i = 0; i < productes.length; i++) {
			if (productes[i][0] != null) {
				StPVP = String.valueOf(pPvp);
				productes[i][0]=pCodiProducte;
				productes[i][1]=pDescripcio;
				productes[i][2]=StPVP;
 
			}
 
 
		}
 
			//Para comprobar
			System.out.println("Se ha añadido a la lista de productos "+
			"\nel Codigo: " + pCodiProducte + "\nDescripcion: " + pDescripcio +
			"con pvp:" + StPVP);
	}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Añadir datos a la primera posición vacia de array

Publicado por Kabuto (1381 intervenciones) el 01/11/2018 19:43:39
Puedes "romper" la ejecución del for usando break tras hacer la inserción de datos:

1
2
3
4
5
6
7
8
for (int i = 0; i < productes.length; i++) {
    if (productes[i][0] != null) {
        StPVP = String.valueOf(pPvp);
        productes[i][0]=pCodiProducte;
        productes[i][1]=pDescripcio;
        productes[i][2]=StPVP;
        break;
    }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de jose
Val: 64
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Añadir datos a la primera posición vacia de array

Publicado por jose (73 intervenciones) el 01/11/2018 19:51:02
Hola Kabuto,

Cuanto tiempo.

Encontré la forma de hacerlo de ésta forma, es igual, pero veo que me sobra código: Me gusta más la tuya.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public void afegirProducte(String pCodiProducte, String pDescripcio, int pPvp, String[][] productes) {
		// S’afegiran les dades Codi Producte, Descripció i PVP en l’array “productes”
		String StPVP = null;
 
		insertado:
		for (int i = 0; i < productes.length; i++) {
			for (int j = 0;j < productes[i].length; j++) {
				if (productes[i][0] == null) {
					StPVP = String.valueOf(pPvp);
					productes[i][0]=pCodiProducte;
					productes[i][1]=pDescripcio;
					productes[i][2]=StPVP;
					break insertado;
				}
			}
 
		}
		//Para comprobar
		System.out.println("Se ha añadido a la lista de productos "+
		"\nel Codigo: " + pCodiProducte + "\nDescripcion: " + pDescripcio +
		"con pvp:" + StPVP);
 
	}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar