Maison > Java > javaDidacticiel > Mélanger des collections non ordonnées en Java

Mélanger des collections non ordonnées en Java

WBOY
Libérer: 2023-08-20 09:33:07
avant
871 Les gens l'ont consulté

Mélanger des collections non ordonnées en Java

Il existe deux types de collections en Java. L’un est un ensemble ordonné et l’autre est un ensemble non ordonné. Une collection ordonnée stocke les éléments dans l’ordre d’insertion, c’est-à-dire qu’elle conserve l’ordre d’insertion des éléments. Les collections non ordonnées, telles que Map et Set, ne maintiennent aucun ordre.

Dans cet article, nous allons créer une collection non ordonnée et essayer de mélanger ses éléments à l'aide de la méthode intégrée 'Collections.shuffle()'.

Programme pour mélanger les éléments de l'ensemble de collection non ordonné

Interface SortedSet

Le nom de cette interface contient le terme « Trié », ce qui signifie qu'elle contient tous les éléments classés par ordre croissant. Il étend les propriétés de l'interface Set. Afin d'utiliser les fonctionnalités de SortedSet, nous utiliserons une classe d'ensemble d'arbres qui implémente l'interface SortedSet.

Grammaire

SortedSet< element_Type > collection_name = new TreeSet<>();
Copier après la connexion

Ici, element_Type est une classe wrapper, pas un type de données primitif.

La traduction de

Collections.shuffle()

est :

Collections.shuffle()

Cette méthode est fournie par le package 'java.util' et agit comme un mélangeur. Il accepte une collection comme argument et réorganise les éléments de manière aléatoire.

Grammaire

Collections.shuffle( nameOfcollection );
Copier après la connexion

Comment fonctionne le code

  • Nous allons créer un ensemble d'arbres nommé 'treeSt' et stocker certains éléments de type String en utilisant la méthode intégrée 'add()'.

  • Maintenant, créez une nouvelle ArrayList et copiez tous les éléments du Tree Set précédent.

  • Enfin, utilisez la méthode 'Collections.shuffle()' pour mélanger les éléments de l'ArrayList puis les imprimer.

La traduction chinoise de

Exemple

est :

Exemple

import java.util.*;
public class Srtset {
   public static void main(String args[]) {
      // Creating a tree set
      SortedSet<String> treeSt = new TreeSet<>();
      // Adding elements in the tree set
      treeSt.add("Tutorix");
      treeSt.add("Simply");
      treeSt.add("Easy");
      treeSt.add("Learning");
      treeSt.add("Tutorials");
      treeSt.add("Point");
      // print elements before shuffling 
      System.out.println("Elements of the given set without performing shuffling: ");
      System.out.println(treeSt);
      // storing the elements of tree set in array list 
      List<String> arayList = new ArrayList<>(treeSt);
      // performing shuffle operation on list
      Collections.shuffle(arayList);
      // display the shuffled elements
      System.out.println("Shuffled elements of the given set: ");
      System.out.println(arayList);
   }
}
Copier après la connexion

Sortie

Elements of the given set without performing shuffling: 
[Easy, Learning, Point, Simply, Tutorials, Tutorix]
Shuffled elements of the given set: 
[Easy, Simply, Learning, Tutorix, Tutorials, Point]
Copier après la connexion

Un programme pour mélanger les éléments d'une carte d'ensemble non ordonnée

Treemap

C'est une classe utilisée pour implémenter l'interface NavigableMap. Elle stocke les éléments de la carte dans une structure arborescente. Pour trier les éléments LinkedHashMap, nous devons utiliser cette classe. La raison la plus évidente est qu'elle fournit une alternative efficace. pour stocker les paires clé-valeur dans l'ordre trié.

La syntaxe générale de TreeMap est la suivante −

Grammaire

TreeMap< TypeOfKey, TypeOfValue > nameOfMap = new TreeMap<>();
Copier après la connexion

Comment fonctionne le code

  • Créez un objet TreeMap nommé « workers » et insérez-y des éléments à l'aide de la méthode « put() ».

  • Maintenant, définissez une nouvelle ArrayList et copiez-y tous les éléments de « workers » à l'aide de la méthode « entrySet() ».

  • Allez-y et utilisez la méthode 'Collections.shuffle()' pour mélanger les éléments de l'ArrayList.

  • Enfin, définissez une boucle for-each pour imprimer les éléments remaniés. La méthode 'getKey()' récupérera la clé et 'getValue()' obtiendra sa valeur correspondante.

La traduction chinoise de

Exemple

est :

Exemple

import java.util.*;
public class Suffle {
   public static void main(String args[]) {
      TreeMap<String, Integer> workers = new TreeMap<>();
      // Adding elements in the workers map
      workers.put("Vaibhav", 4000);
      workers.put("Ansh", 3000);
      workers.put("Vivek", 1500);
      workers.put("Aman", 2000);
      workers.put("Tapas", 2500);
      // printing details workers map without shuffle
      System.out.println("Elements of the map: ");
      for (String unKey : workers.keySet()) {
         System.out.println("Name: " + unKey + ", Salary: " + workers.get(unKey));
      }
      // create new ArrayList
      List<Map.Entry<String, Integer>> arayList = new ArrayList<>(workers.entrySet());
      Collections.shuffle(arayList);
      // printing details after shuffling
      System.out.println("Elements of the newly shuffled map: ");
      for (Map.Entry<String, Integer> print : arayList) {
         System.out.println("Name: " + print.getKey() + ", Salary: " + print.getValue());
      }
   }
}
Copier après la connexion

Sortie

Elements of the map: 
Name: Aman, Salary: 2000
Name: Ansh, Salary: 3000
Name: Tapas, Salary: 2500
Name: Vaibhav, Salary: 4000
Name: Vivek, Salary: 1500
Elements of the newly shuffled map: 
Name: Vaibhav, Salary: 4000
Name: Aman, Salary: 2000
Name: Vivek, Salary: 1500
Name: Ansh, Salary: 3000
Name: Tapas, Salary: 2500
Copier après la connexion

Conclusion

Dans cet article, nous avons appris à mélanger les éléments d'un ensemble non ordonné avec des exemples. Nous avons également découvert deux collections non ordonnées nommées Map et Set.

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!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal