Java >> Tutoriel Java >  >> Java

Java Remplir un tableau 2d avec des nombres aléatoires

Java Remplir un tableau 2d avec des nombres aléatoires | Dans cette section, nous générons un nombre aléatoire pour un tableau à deux dimensions. Pour ce faire, nous avons besoin d'un module random disponible dans le package java.util.Random. Voir également : Créer un tableau Java de nombres aléatoires

Par exemple :-
array[ ][ ] =new int[2][2]
Générer un nombre aléatoire et l'insérer dans le tableau.
Résultat :-
1 2
/>3 4

Le module random a généré des nombres entiers aléatoires, dans le programme il suffit de donner le nombre de lignes et de colonnes. Observez le code ci-dessous.

Programme en Java Remplir un tableau 2d avec des nombres aléatoires

Voyons maintenant un programme Java pour remplir un tableau 2d avec des nombres aléatoires. Nous allons créer un tableau 2d.

import java.util.Arrays;
import java.util.Random;

class Main {
   public static void main(String args[]) {
      int array[][] = new int[2][2];
      Random random = new Random();

      for (int i = 0; i < array.length; i++) {
         for (int j = 0; j < array[i].length; j++) {
            array[i][j] = random.nextInt();
         }
      }
      System.out.println("Array: " 
                  + Arrays.deepToString(array));
   }
}

Sortie :-

Tableau :[ [702551432, -2129386055], [-1258240069, -1691210993] ]

L'explication du code est la suivante :-

Étape 1 :- Importez les classes requises qui sont utilisées pour exécuter ce code. Nous avons besoin d'une classe aléatoire, donc importez random depuis java.util.Random ; La classe Random génère un nombre aléatoire, il existe de nombreux constructeurs pour cette classe.
Etape 2 :- Dans la méthode principale, initialisez un tableau à deux dimensions et donnez la taille de la ligne et de la colonne à 2 et 2 respectivement.
Étape 3 :- Créez un objet pour la classe random en tant que random et dans la boucle for insérez les éléments de rangée et de colonne en utilisant la méthode random, ici nous utilisons random.nextInt() car nous avons besoin de valeurs entières.
Étape 4 :- Imprimer le résultat.

Si nous voulons générer un nombre dans une plage spécifique, nous devons transmettre cette valeur maximale de plage à la méthode nextInt().

array[i][j] = random.nextInt(100);

Sortie :-

Tableau :[ [61, 34], [30, 18] ]

Désormais, la méthode nextInt() génère toujours des nombres compris entre 0 et 100.

Java Fill 2d Array With Random Numbers – Valeurs à virgule flottante

De la même manière, nous pouvons générer des valeurs doubles aléatoires (valeurs à virgule flottante) et les insérer dans le tableau 2d. Nous exécutons le même code simplement en remplaçant la méthode random.nextInt() par random.nextDouble().

import java.util.Arrays;
import java.util.Random;

class Main {
   public static void main(String args[]) {
      double array[][] = new double[2][2];
      Random random = new Random();

      for (int i = 0; i < array.length; i++) {
         for (int j = 0; j < array[i].length; j++) {
            array[i][j] = random.nextDouble();
         }
      }
      System.out.println("Array: " 
                 + Arrays.deepToString(array));
   }
}

Sortie :-

Tableau :[ [0.655100901068955, 0.2537286294440366], [0.861592127745446, 0.08139249678343408] ]

La méthode nextDouble() génère un nombre à virgule flottante entre 0 et 1. Si nous voulons générer des nombres à virgule flottante entre une plage, nous devons multiplier la valeur générée par la valeur maximale de la plage.

array[i][j] = random.nextDouble() * 100;

Sortie :-

Tableau :[ [74.83114169159951, 1.6052937526550237], [98.35925290059718, 62.81589398882489] ]

// generate a random floating point
// between 0 to 100
double number = random.nextDouble() * 100;

// store with only 2 decimal points
array[i][j] = Math.round(number * 100.0) / 100.0;

Sortie :-

Tableau :[ [43.38, 61.07], [95.25, 68.77] ]

Générer un tableau Java 2d aléatoire

Dans le tableau Java fill 2d ci-dessus avec des programmes de nombres aléatoires, nous avons codé en dur le nombre de lignes et de valeurs de colonne pour un tableau 2d. Mais dans le programme ci-dessous, nous les initialiserons avec un nombre aléatoire entre 1 et 5.

import java.util.Arrays;
import java.util.Random;

class Main {
   public static void main(String args[]) {
      Random random = new Random();
      int row = random.nextInt(5) + 1;
      int column = random.nextInt(5) + 1;
      int array[][] = new int[row][column];

      for (int i = 0; i < array.length; i++) {
         for (int j = 0; j < array[i].length; j++) {
            array[i][j] = random.nextInt(100);
         }
      }

      System.out.println("2D array size: " 
                 + row + " x " + column);
      System.out.println("Array: " 
                 + Arrays.deepToString(array));
   }
}

Sortie :-

Taille du tableau 2D :3 x 2
Tableau :[ [90, 90], [47, 34], [63, 96] ]

Taille du tableau 2D :2 x 4
Tableau :[ [88, 90, 61, 39], [65, 17, 29, 76] ]

Taille du tableau 2D :1 x 1
Tableau :[ [76] ]

Taille du tableau 2D :2 x 2
Tableau :[ [70, 24], [33, 72] ]

Taille du tableau 2D :1 x 4
Tableau :[ [43, 90, 39, 50] ]


Balise Java