Je crée un programme qui génère 100 entiers aléatoires entre 0 et 9 et affiche le nombre de chaque nombre. J'utilise un tableau de dix entiers, nombre, pour stocker le nombre de 0s, 1s, ..., 9s.)
Lorsque je compile le programme, j'obtiens l'erreur:
RandomNumbers.Java:9: erreur: la méthode generateNumbers dans la classe RandomNumbers ne peut pas être appliquée à des types donnés;
generateNumbers ();requis: int []
trouvé: generateNumbers ();
raison: les listes d'arguments réelles et formelles diffèrent en longueur
J'obtiens cette erreur pour les lignes de code que j'appelle les méthodes generateNumbers () et displayCounts () dans la méthode principale.
public class RandomNumbers {
public static void main(String[] args) {
//declares array for random numbers
int[] numbers = new int [99];
//calls the generateNumbers method
generateNumbers();
//calls the displayCounts method
displayCounts();
}
//*****************************************************************
private static int generateNumbers(int[] numbers){
for(int i = 0; i < 100; i++){
int randomNumber;
randomNumber = (int)(Math.random() *10);
numbers[i] = randomNumber;
return randomNumber;
}
}
//*****************************************************************
private static void displayCounts(int[] numbers){
int[] frequency = new int[10];
for(int i = 0, size = numbers.length; i < size; i++ ){
System.out.println((i) + " counts = " + frequency[i]);
}
}//end of displayCounts
}//end of class
generateNumbers()
attend un paramètre et vous n'en transmettez pas!
generateNumbers () retourne également après avoir défini le premier nombre aléatoire - il semble y avoir une certaine confusion sur ce qu'il essaie de faire.
appelez generateNumbers(numbers);
, votre generateNumbers();
attend int[]
en tant que argument
ans et vous n'en passiez aucun, d'où l'erreur