Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/09/2009, 07:25
Avatar de Fuzzylog
Fuzzylog
 
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 16 años, 4 meses
Puntos: 188
Respuesta: Comparar arreglo

Creo que lo que necesitas es algo como este método:
//Vamos a suponer que tienes un array de 5 elementos no dinámico
public eliminaIgualesEnTipoProducto(String[] tipoProducto) {
String[] tipoProductoAux[5];
int k = 0;
boolean existsEqualElement = false;
for (int i=0, i<tipoProducto.length, i++) {
for (int j=0, j<tipoProducto.lenght j++) {
if (i!=j && tipoProducto[i].equals(tipoProducto[j]) {
existsEqualElement = true;
}
}
if(!existsEqualElement) {
tipoProductoAux[k] = tipoProducto[i];
k++;
}
}
//Reestructura el elemento auxiliar
for (int i=k, i<tipoProductoAux.lenght, i++) {
tipoProductoAux[i] = null;
}
}

- Ten en cuenta que esto no lo he probado, sino que lo hice directamente en un editor de texto, así que no sé si he metido algún gazapo.

//Condicionantes

- Si en un principio el array tipoProducto[] tiene elementos null a partir de un cierto punto del array, convendría definir una variable numeroProductos de la siguiente forma:

int numeroProductos = 0;
for (int i=0, i<tipoProducto.lenght, i++) {
if (!tipoProducto[i].equals(null)) {
numeroProductos++;
}
}

Y usar numeroProductos en vez de tipoProducto.length en el for de arriba del todo

- Si los elementos null estan por el medio te convendria hacer algo similar a lo descrito arriba, controlando primero que el elemento que compares no sea null.

- La otra opción es usar arrays dinámicos, pero investigar eso te lo dejo a tí, que no te lo voy a dar todo hecho ;)

Recuerda, sólo te estoy dando ideas, hay muchas soluciones válidas posibles, todo depende de lo que tengas y quieras hacer.