Ciao ragazzi.
Sto ancora cercando di capire fino in fondo gli array e i vettori.
In questo esercizio devo creare una semplice classe che mi dia la permutazione casuale di n numeri, senza che ve ne siano due uguali.

Ecco la mia classe
codice:
 
import java.util.Random;

public class Permutation 
{
	public Permutation(int aRange)
	{
		numbers = new int[aRange];
	}
	
	public int[] nextPermutation()
	{
		//Creo una classe con la stessa lungezza di numbers riempita di numeri da 1 a aRange
		int[] sortedNumbers = new int[numbers.length];
		for (int i=0; i < sortedNumbers.length; i++)
			sortedNumbers[i] = i+1;
		
		Random generator = new Random();
		
		int tempRange = numbers.length;
		
		for(int i = 0; i < numbers.length; i++)
		{
			int c = generator.nextInt(tempRange);
			System.arraycopy(sortedNumbers, c, numbers, i, 1);
			System.arraycopy(sortedNumbers, c+1, sortedNumbers, c, tempRange - c - 1);
			tempRange--;
		}
		
		return numbers;
	}
	
	private int[] numbers;
}
Tuttavia c'è qualcosa di sbagliato in questa classe...il problema è che non riesco a capire cosa!!
Ho provato ad eseguire anche manualmente il ciclo for...dovrebbe trovarsi, ma così non è.
Qualcuno potrebbe aiutarmi a capire dov'è l'errore??

Grazie infinite a tutti!

gl