Java est un langage de programmation extrêmement populaire qui est largement utilisé dans divers scénarios, notamment le développement Web, le développement d'applications mobiles, les applications de bureau, etc. Java fournit une riche bibliothèque de classes de collection pour aider les développeurs à gérer diverses structures de données, notamment les tableaux, les listes chaînées, les piles, les files d'attente et les cartes.
En Java, une collection est un conteneur qui stocke des éléments de données. La bibliothèque de classes de collection Java peut être divisée en deux hiérarchies : les interfaces de collection et les classes d'implémentation de collection. Une interface de collection est un ensemble de spécifications qui définit une série de méthodes permettant d'opérer sur les éléments d'une collection. La classe d'implémentation de collection est basée sur la réalité de l'interface et fournit des détails d'implémentation spécifiques, tels que ArrayList, LinkedList, HashSet, etc.
Dans cet article, nous présenterons quelques exercices courants de traitement de collection Java pour aider les lecteurs à améliorer leur maîtrise des opérations de collection Java.
Étant donné un tableau d'entiers, recherchez les éléments en double qu'il contient. Par exemple, pour le tableau {1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 4, 5}, 1, 4 et 5 doivent être générés.
Une façon de résoudre ce problème consiste à utiliser un HashSet. Nous pouvons parcourir chaque élément du tableau et les ajouter au HashSet. Si un élément existe déjà dans le HashSet, il s'agit d'un doublon. Voici l'implémentation du code :
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 4, 5}; Set<Integer> set = new HashSet<>(); Set<Integer> duplicates = new HashSet<>(); for (int i : arr) { if (!set.add(i)) { duplicates.add(i); } } System.out.println("重复元素为:" + duplicates);
Étant donné deux tableaux d'entiers triés, fusionnez-les en un tableau trié. Par exemple, pour les tableaux {1, 3, 5, 7} et {2, 4, 6, 8}, {1, 2, 3, 4, 5, 6, 7, 8} doit être affiché.
Une façon de résoudre ce problème consiste à créer un nouveau tableau pour contenir les résultats fusionnés. Ensuite, nous pouvons utiliser deux pointeurs pour pointer vers les éléments des deux tableaux et comparer leurs tailles. Ajoute le plus petit élément au nouveau tableau et déplace le pointeur d'une position vers l'avant. Voici l'implémentation du code :
int[] arr1 = {1, 3, 5, 7}; int[] arr2 = {2, 4, 6, 8}; int len1 = arr1.length; int len2 = arr2.length; int[] result = new int[len1 + len2]; int i = 0, j = 0, k = 0; while (i < len1 && j < len2) { if (arr1[i] < arr2[j]) { result[k++] = arr1[i++]; } else { result[k++] = arr2[j++]; } } while (i < len1) { result[k++] = arr1[i++]; } while (j < len2) { result[k++] = arr2[j++]; } System.out.println(Arrays.toString(result));
Étant donné une chaîne, comptez le nombre de fois où chaque caractère y apparaît. Par exemple, pour la chaîne « Java est un excellent langage », le caractère « J » doit être affiché une fois, le caractère « a » doit apparaître 4 fois, etc.
Une façon de résoudre ce problème consiste à parcourir chaque caractère de la chaîne et à les ajouter à un HashMap. Traitez chaque caractère comme une clé et le nombre d'occurrences comme une valeur. Voici l'implémentation du code :
String str = "Java is a great language"; Map<Character, Integer> map = new HashMap<>(); for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); if (c == ' ') { continue; } if (map.containsKey(c)) { map.put(c, map.get(c) + 1); } else { map.put(c, 1); } } for (Map.Entry<Character, Integer> entry : map.entrySet()) { System.out.println("字符'" + entry.getKey() + "'出现" + entry.getValue() + "次。"); }
Les collections Java sont une partie importante de la programmation Java. Cet article présente quelques exercices courants de traitement de collection Java pour aider les lecteurs à approfondir leur compréhension et leur application des opérations de collection 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!