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:

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;
					}
				}
			}
               }
Avevo pensato di fare qualcosa del genere:
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) {
			.......
}
Che non riesco a implementare correttamente.