codice:
public class Array {
Scanner tast = new Scanner(System.in);
private String[] elementi;
private int numElementi;
public Array(String[] a, int i) {
elementi = a;
numElementi = 1;
}
public void print() {
for (int k = numElementi - 1; k >= 1; k--) {
for(int j = 0; j <= k - 1; j++)
if(elementi[j].compareTo(elementi[k]) > 0) {
String temp = elementi[k];
elementi[k] = elementi[j];
elementi[j] = temp;
}
}
for(int n = 0; n < elementi.length; n++)
System.out.print(elementi[n] + " ");
}
}
Il main è:
codice:
import java.util.Scanner;
public class TestArray {
public static void main(String[] args) {
Scanner tast = new Scanner(System.in);
String[] a1 = {"c", "ci", "s", "p", "ca"};
Array r1 = new Array(a1, 15);
System.out.print("array ordinato: ");
r1.print();
System.out.println();
}
}
Questo metodo dovrebbe stampare un array di stringhe in modo ordinato ma funziona in parte. Ordina tutte le parole tranne l'ultima.
Es: String[] a1 = {"c", "ci", "s", "p", "ca"};
Mi stampa: c, ci, p, s, ca.
Come risolvo?
Grazie