Ciao a tutti, sono nuovo del forum e di Java (seguo un corso base al politecnico).
Devo creare un metodo max() in modo che mi fornisca il valore massimo di un array casuale (valori da 1 a 20), solamente che ho fatto un po' tanta confusione.. Ecco il mio codice:
codice:
import java.util.Arrays;

public class aufgabe13 {
	public static void main(String[] args) {
		int n = 6;
		
		System.out.println(Arrays.toString(rand(n)));
		int a = max(n, rand(n));
		System.out.println(a);
	}
	
	static int[] rand(int n) {
		int[] rand = new int[n];

		for (int i = 0; i < n; i++) {
			rand[i] = (int) (Math.random() * 20 + 1);
		}
		return rand;
	}
	
	static int max(int n, int[] rand) {
		Arrays.sort(rand(n));
		return rand(n)[rand(n).length - 1];
	}

}
L'output è del tipo:
[11, 3, 7, 4, 3, 9]
15

immagino l'errore sia dovuto dal fatto che il metodo max() genera un array casuale per conto suo e il comando System.out.println ne generi un altro, perciò viene tutto sbagliato.. Qualcuno sa spiegarmi dove sbaglio? Grazie mille in anticipo :P