La recherche principale de cet article est le contenu pertinent de la méthode Collection.Shuffle (). Jetons un coup d'œil au contenu spécifique ci-dessous.
Il existe une méthode statique Shuffle () sous la classe java.util.collections, comme suit:
1) Static void shuffle (list <?> List) Utilisez la source aléatoire par défaut pour pervertir la liste, et la possibilité de toutes les permutations se produit est à peu près égale.
2) Static Void Shuffle (List <?> List, Random Rand) effectue la liste spécifiée à l'aide de la source aléatoire spécifiée. La possibilité de toutes les permutations se produit est à peu près égale, en supposant que la source aléatoire est juste.
Pour le dire simplement, c'est comme un shuffle, perturbant aléatoirement l'ordre d'origine.
Remarque: Si vous avez un tableau entier, utilisez la méthode Arrays.aslist () pour la convertir en classe de collecte, il y a deux façons:
1) Utilisez List <Integer> list = arrayList (arrays.aslist (IA)) et utilisez Shuffle () pour le perturber ne modifiera pas l'ordre du tableau sous-jacent.
2) Utilisez List <Integer> list = arrays.aslist (IA), puis utilisez Shuffle () pour le perturber modifiera l'ordre du tableau sous-jacent. L'exemple de code est le suivant:
Package ahu; import java.util. *; public class modifie {public static void main (String [] args) {random rand = new random (47); Integer [] ia = {0,1,2,3,4,5,6,7,8,9}; list <inter> list = new ArrayList <Integer> (Arecys.aslist (ia)); shufflig: "+ list); collections.shuffle (list, rand); System.out.println (" After shuffling: "+ list); System.out.println (" array: "+ arrays.tostring (ia)); list <peger> list1 = arrays.aslist (ia); System.out.println (" Before Shuffling: "+ list1); collections.shuffle (list1, rand); System.out.println (" After Shuffling: "+ list1); System.out.println (" Array: "+ arrays.tostring (ia));}}Les résultats de l'opération sont les suivants:
3, 9] After shuffling: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] After shuffling: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] After shuffling: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] After shuffling: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] After shuffling: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] après le mélange: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] après le mélange: [8, 0, 5, 2, 6, 1, 4, 9, 3, 7] après le mélange: [8, 0, 5, 2, 6, 1, 4, 3, 7]
Dans le premier cas, la sortie de Arrays.Aslist () est transmise au constructeur de ArrayList (), qui crée un ArrayList qui fait référence à l'élément de l'IA, donc la perturbation de ces références ne modifie pas le tableau. Cependant, si le résultat des tableaux. Il est important de réaliser que l'objet de liste produit par Arrays.aslist () utilisera le tableau sous-jacent comme implémentation physique. Tant que l'action que vous effectuez modifiera cette liste et que vous ne voulez pas que le tableau d'origine soit modifié, vous devez créer une copie dans un autre conteneur.
Résumer
Ce qui précède est tout le contenu de cet article sur l'analyse de l'exemple de méthode Collection.Shuffle (), j'espère que cela sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à d'autres sujets connexes sur ce site. S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!