Array mischen in Java
-
Verwenden Sie die Methode
random()
, um ein Array in Java zu mischen -
Verwenden der Methode
shuffle()
zum Mischen eines Arrays 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.