Tableau aléatoire en Java

Siddharth Swami 12 octobre 2023
  1. Utilisez la méthode random() pour mélanger un tableau en Java
  2. Utilisez la méthode shuffle() pour mélanger un tableau en Java
Tableau aléatoire en Java

Un tableau est l’une des structures de données fondamentales de Java. Java est équipé de nombreuses fonctions et méthodes pour traiter et travailler sur des tableaux.

Ce tutoriel montre comment mélanger un tableau en Java.

Utilisez la méthode random() pour mélanger un tableau en Java

Nous pouvons utiliser la méthode de tableau aléatoire de Fisher-Yates pour mélanger aléatoirement un tableau donné. Cette méthode vise à commencer à partir du dernier élément d’un tableau donné et à continuer de l’échanger avec un élément sélectionné au hasard dans le tableau.

Nous utilisons la fonction Random() de la classe random pour choisir aléatoirement les index d’un tableau. Nous allons importer deux classes, Random() et Arrays, de la bibliothèque java.util.

Par exemple,

import java.util.Arrays;
import java.util.Random;
public class ShuffleExample {
  static void rand(int array[], int a) {
    // Creating object for Random class
    Random rd = new Random();

    // Starting from the last element and swapping one by one.
    for (int i = a - 1; i > 0; i--) {
      // Pick a random index from 0 to i
      int j = rd.nextInt(i + 1);

      // Swap array[i] with the element at random index
      int temp = array[i];
      array[i] = array[j];
      array[j] = temp;
    }
    // Printing the random generated array
    System.out.println(Arrays.toString(array));
  }

  public static void main(String[] args) {
    int[] ar = {1, 2, 3, 4, 5, 6, 7, 8};
    int b = ar.length;
    rand(ar, b);
  }
}

Production:

[5, 4, 6, 2, 8, 1, 7, 3]

Utilisez la méthode shuffle() pour mélanger un tableau en Java

La fonction shuffle() de la classe Collection prend une liste donnée par l’utilisateur et la mélange aléatoirement. Cette fonction est facile à utiliser et prend moins de temps que la méthode précédente. En outre, cela réduit la ligne de codes pour nous.

Nous prenons un tableau et le convertissons d’abord en liste. Ensuite, nous utilisons la fonction shuffle() pour mélanger cette liste. Enfin, nous modifions cette liste en tableau et l’imprimons.

Voir le code ci-dessous.

import java.util.*;
public class ShuffleExample2 {
  public static void main(String[] args) {
    Integer[] array = {1, 3, 5, 7, 9};
    List<Integer> list = Arrays.asList(array);

    Collections.shuffle(list);
    list.toArray(array);
    System.out.println(Arrays.toString(array));
  }
}

Production:

[7, 9, 3, 1, 5]

Dans le tableau ci-dessus, nous pouvons voir notre tableau mélangé. Il renvoie un nouveau tableau mélangé à chaque fois.

Article connexe - Java Array