ah, poi avrei un altro dubbio;
anzichè utilizzare dei comparatori o l'interfaccia comparable (non ancora spiegati a lezione, pertanto ci vietano di usarli), potrei implementare un metodo comune per i 3 ordinamenti?
mi spiego:
Avevo pensato di fare qualcosa del genere:codice:public void ordinaElementi(String elemento){ if (elemento.compareToIgnoreCase("MATERIA") == 0) { bubbleSort(arrLibretto[]); /* * però non so come implementare il metodo arrLibretto[i].restituisciMateria */ } else if (elemento.compareToIgnoreCase("VOTO") == 0) { bubbleSort(arrLibretto[]); */ * però non so come implementare il metodo arrLibretto[i].restituisciVoto */ } else if (elemento.compareToIgnoreCase("CREDITI") == 0) { bubbleSort(arrLibretto[]); */ * però non so come implementare il metodo arrLibretto[i].restituisciCrediti */ } private void bubbleSort(Libretto[] arrayLibretto) { int dimension = arrayLibretto.length; int counter = 0; boolean sorted = false; while ((counter < dimension) && (!sorted)) { counter++; sorted = true; for (int i = dimension - 1; i >= counter; i--) { if (((arrayLibretto[i - 1]) .compareTo(arrayLibretto[i])) > 0) { swap(i, (i - 1)); sorted = false; } } } }
Che non riesco a implementare correttamente.codice:public void ordinaElementi(String elemento){ if (elemento.compareToIgnoreCase("MATERIA") == 0) { bubbleSort(arrLibretto[], arrLibretto[i].restituisciMateria(), arrLibretto[i-1].restituisciMateria()); /* * però non so come implementare il metodo arrLibretto[i].restituisciMateria */ } else if (elemento.compareToIgnoreCase("VOTO") == 0) { bubbleSort(arrLibretto[], arrLibretto[i].restituisciVoto(), arrLibretto[i-1].restituisciVoto()); */ * però non so come implementare il metodo arrLibretto[i].restituisciVoto */ } else if (elemento.compareToIgnoreCase("CREDITI") == 0) { bubbleSort(arrLibretto[], arrLibretto[i].restituisciCrediti(), arrLibretto[i-1].restituisciCrediti()); */ * però non so come implementare il metodo arrLibretto[i].restituisciCrediti */ } private void bubbleSort(Libretto[] arrayLibretto) { ....... }

Rispondi quotando