Salve a tutti,
ho risposto poco fa ad una domanda su yahoo answer di un utente che chiedeva di trovare quanti elementi fossero uguali in un array (conoscendo quali elementi andassero inseriti nell'array) quindi ho risolto in questo modo:
package it.matmacsystem;
public class ArrayClass {
public static void main (String[] args){
String A[] = {"pippo", "paperino", "pluto", "pluto", "pastore", "pippo", "pluto", "paperino", "pluto", "paperino", "pluto"};
String attuale;
int pippo=0, paperino=0, pluto=0, pastore=0;
for (int i = 0; i<A.length; i++){
attuale = A[i];
switch (attuale){
case "pippo":
pippo++;
break;
case "paperino":
paperino++;
break;
case "pluto":
pluto++;
break;
case "pastore":
pastore++;
break;
default:
break;
}
}
System.out.println("Gli elementi solo: " + A.length);
System.out.println("Paperino: " + paperino +
"\nPippo: " + pippo +
"\nPluto: " + pluto +
"\nPastore: " + pastore);
System.out.println("La somma degli elementi contati è: " + (pippo+paperino+pluto+pastore));
}
}
ma poi mi sono chiesto come potrei modificare l'algoritmo su un array di n elementi inseriti da un utente senza sapere a priori quali solo.
Ho provato diversi algoritmi ma sempre c'era un problema
Mi potete aiutare?