Introduction
Cette question aborde un scénario courant dans lequel deux ArrayLists contiennent éléments liés, mais la randomisation d'une liste devrait automatiquement randomiser l'autre dans le même ordre. Pour comprendre la solution, il est crucial d'approfondir le problème et d'explorer le concept sous-jacent de randomisation parallèle.
Comprendre le problème
Étant donné deux ArrayLists, fileList et imgList, représentant des éléments associés (par exemple des fichiers texte et leurs images correspondantes), la tâche consiste à randomiser fileList, randomisant ainsi automatiquement imgList de la même manière. Cela garantit que les éléments associés restent appariés même après la lecture aléatoire.
Solution
Le code suivant présente une solution efficace utilisant la méthode Collections.shuffle() avec deux objets Random initialisés avec la même graine :
<code class="java">long seed = System.nanoTime(); Collections.shuffle(fileList, new Random(seed)); Collections.shuffle(imgList, new Random(seed));</code>
Explication
Sortie
Pour l'exemple d'entrée fourni, la sortie après randomisation sera la suivante :
Remarquez comment l'ordre des éléments dans imgList reflète l'ordre aléatoire de fileList, associant efficacement les éléments associés.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!