Array mischen in Java

Siddharth Swami 12 Oktober 2023
  1. Verwenden Sie die Methode random(), um ein Array in Java zu mischen
  2. Verwenden der Methode shuffle() zum Mischen eines Arrays in Java
Array mischen in Java

Ein Array ist eine der grundlegenden Datenstrukturen in Java. Java ist mit vielen Funktionen und Methoden ausgestattet, um Arrays zu verarbeiten und zu bearbeiten.

Dieses Tutorial zeigt, wie ein Array in Java gemischt wird.

Verwenden Sie die Methode random(), um ein Array in Java zu mischen

Wir können die Fisher-Yates Shuffle-Array-Methode verwenden, um ein bestimmtes Array zufällig zu mischen. Diese Methode zielt darauf ab, mit dem letzten Element eines bestimmten Arrays zu beginnen und es ständig mit einem zufällig ausgewählten Element im Array zu tauschen.

Wir verwenden die Funktion Random() der Klasse random, um die Indizes eines Arrays zufällig auszuwählen. Wir importieren zwei Klassen, Random und Arrays, aus der Bibliothek java.util.

Zum Beispiel,

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);
  }
}

Ausgabe:

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

Verwenden der Methode shuffle() zum Mischen eines Arrays in Java

Die Funktion shuffle() der Klasse Collection nimmt eine vom Benutzer vorgegebene Liste und mischt sie zufällig. Diese Funktion ist einfach zu bedienen und benötigt weniger Zeit als die vorherige Methode. Außerdem reduziert es die Codezeile für uns.

Wir nehmen ein Array und wandeln es zunächst in eine Liste um. Dann verwenden wir die Funktion shuffle(), um diese Liste zu mischen. Schließlich ändern wir diese Liste wieder in ein Array und geben es aus.

Siehe den Code unten.

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));
  }
}

Ausgabe:

[7, 9, 3, 1, 5]

Im obigen Array sehen wir unser gemischtes Array. Es gibt jedes Mal ein neues gemischtes Array zurück.

Verwandter Artikel - Java Array