Originariamente inviato da dik1992
ho fatto questo programmino ma non funziona come risultato mi da lo stesso array iniziale dove ho sbagliato??

creazione array

codice:
import javax.swing.JOptionPane;
public class creaArray {
	public String[] nuovoArray (int length){
		String[] a = new String[length];
		for (int i = 0; i<length; i++){
			a[i] = JOptionPane.showInputDialog("inserire una parola");
		}
		return a;
	}

}
ordinamento

codice:
public class selection {
private String[] a;
public selection(String anArray[]){
	a = anArray;
}
public void swap(int i, int j){
	String temp = a[i];
	a[i] = a[j];
	a[j] = temp;
}
public int posizioneMinima(int from){
	int minPos = from;
	for(int i = from+1; i<a.length; i++){
		if(a[i].equalsIgnoreCase(a[minPos] )){
			minPos = i;
		}
	}
	return minPos;
}
public void sort(){
	for (int i = 0; i<a.length-1; i++){
		int minPos = posizioneMinima(i);
		swap(minPos,i);
	}
}
}
main

codice:
import javax.swing.JOptionPane;


public class selectionMain {

	public static void main(String[] args) {
	creaArray arr = new creaArray();
	int length = Integer.parseInt(JOptionPane.showInputDialog("inserire numero parole"));
	String[] a = arr.nuovoArray(length);
	for (int i = 0; i <a.length;i++){
		System.out.print(a[i]);
		System.out.print(" ");
	}
		selection sel = new selection(a);
		sel.sort();
		System.out.println(" ");
		for(int j=0; j<a.length; j++){
			System.out.print(a[j]);
			System.out.print(" ");
		}
	

	}

}


RISOLTO!!!!!!