La classe Collections en Java fournit un ensemble d'algorithmes couramment utilisés pour opérer sur les collections. En utilisant ces fonctions, les développeurs Java peuvent facilement trier, rechercher, remplacer, copier et effectuer d'autres opérations sur les collections. Cet article présentera certaines fonctions de collections couramment utilisées pour aider les lecteurs à comprendre comment utiliser les fonctions de collections pour effectuer des opérations de collection en Java.
La fonction de tri de la classe Collections peut trier la collection en spécifiant un comparateur. Comparator est une interface généralement utilisée pour spécifier l'ordre des éléments dans une collection. Voici un exemple de tri à l'aide de la fonction Collections.sort :
List<Integer> numbers = new ArrayList<>(); numbers.add(1); numbers.add(3); numbers.add(2); numbers.add(4); Collections.sort(numbers); for (Integer num : numbers) { System.out.print(num + " "); }
Le code ci-dessus affichera : 1 2 3 4. Si on veut trier par ordre décroissant, on peut passer dans le Comparateur comme suit :
Collections.sort(numbers, new Comparator<Integer>() { public int compare(Integer o1, Integer o2) { return o2 - o1; } });
On peut donc obtenir le résultat par ordre décroissant : 4 3 2 1.
La classe Collections fournit certaines fonctions de recherche couramment utilisées. Voici quelques fonctions de recherche couramment utilisées et leur utilisation :
Voici un exemple de recherche utilisant la fonction binaireSearch :
List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Carol"); names.add("David"); int index = Collections.binarySearch(names, "Carol"); System.out.println("Index of Carol: " + index);
Cela affichera : "Index de Carol : 2".
Il existe une fonction de remplacement dans la classe Collections, qui peut être utilisée pour remplacer des éléments dans la collection. Voici un exemple de remplacement à l'aide de la fonction replace :
List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Carol"); names.add("David"); Collections.replaceAll(names, "Bob", "Beth"); for (String name : names) { System.out.print(name + " "); }
Cela affichera : "Alice Beth Carol David".
La fonction de copie de la classe Collections peut copier des éléments d'une collection vers une autre collection. Notez que les deux collections doivent être de taille égale. Voici un exemple de copie à l'aide de la fonction copy :
List<String> names1 = new ArrayList<>(); names1.add("Alice"); names1.add("Bob"); names1.add("Carol"); names1.add("David"); List<String> names2 = new ArrayList<>(names1.size()); Collections.copy(names2, names1); for (String name : names2) { System.out.print(name + " "); }
Cela affichera : "Alice Bob Carol David".
Si vous devez créer une collection immuable, vous pouvez utiliser les fonctions unmodifiableList, unmodifiableSet et unmodifiableMap dans la classe Collections pour le créer. Ces fonctions renvoient une collection encapsulée et ne permettent pas de modifier les éléments. Voici un exemple d'utilisation de la fonction unmodifiableList pour créer une collection immuable :
List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Carol"); names.add("David"); List<String> immutableNames = Collections.unmodifiableList(names); System.out.print("Immutable names: "); for (String name : immutableNames) { System.out.print(name + " "); } try { immutableNames.add("Eve"); } catch (UnsupportedOperationException e) { System.out.println(" Failed to add Eve to immutableNames"); }
Cela affichera : "Noms immuables : Alice Bob Carol David" et lancera une UnsupportedOperationException lors de la tentative d'ajout d'Eve.
En utilisant ces fonctions fournies dans la classe Collections, les développeurs Java peuvent facilement effectuer des opérations courantes sur les collections. Si vous devez effectuer d'autres opérations de collecte, vous pouvez consulter la classe Collections dans la documentation de l'API Java.
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!