Questions d'entretien courantes sur les conteneurs Java
Que sont les conteneurs Java ? (Apprentissage recommandé : Questions du test commun Java )
Quelle est la différence entre ?
Quelle est la différence entre List, Set et Map ?
Quelle est la différence entre HashMap et Hashtable ?
Comment décider d'utiliser HashMap ou TreeMap ?
Pour les opérations telles que l'insertion, la suppression et le positionnement d'éléments dans Map, HashMap est le meilleur choix. Cependant, si vous devez parcourir une collection ordonnée de clés, TreeMap est un meilleur choix. En fonction de la taille de votre collection, il peut être plus rapide d'ajouter des éléments à un HashMap et de remplacer la carte par un TreeMap pour un parcours ordonné des clés.Parlez-moi du principe de mise en œuvre de HashMap ?
Présentation de HashMap : HashMap est une implémentation asynchrone de l'interface Map basée sur des tables de hachage. Cette implémentation fournit toutes les opérations de mappage facultatives et autorise les valeurs nulles et les clés nulles. Cette classe ne garantit pas l'ordre du mappage, et en particulier elle ne garantit pas que l'ordre soit immuable. Structure de données HashMap : dans le langage de programmation Java, il existe deux structures de base, l'une est un tableau et l'autre est un pointeur simulé (référence). Toutes les structures de données peuvent utiliser ces deux structures de base. construction, HashMap ne fait pas exception. HashMap est en fait une structure de données de « hachage de liste chaînée », qui est une combinaison d'un tableau et d'une liste chaînée. Lorsque nous mettons un élément dans le Hashmap, nous recalculons d'abord la valeur de hachage en fonction du code de hachage de la clé, et obtenons la position (indice) de l'élément dans le tableau en fonction de la valeur de hachage. Le tableau est déjà stocké à cette position. Si d'autres éléments sont ajoutés, les éléments à cette position seront stockés sous la forme d'une liste chaînée. Les éléments nouvellement ajoutés seront placés en tête de la chaîne et les premiers éléments ajoutés le seront. placé à la fin de la chaîne. S'il n'y a aucun élément à cette position dans le tableau, l'élément sera directement placé dans la liste chaînée à cette position dans le tableau. Il convient de noter que l'implémentation de HashMap a été optimisée dans Jdk 1.8. Lorsque les données de nœud dans la liste chaînée dépassent huit, la liste chaînée sera convertie en un arbre rouge-noir pour améliorer l'efficacité des requêtes. de l'original O(n) à O(logn), parlez du principe de mise en œuvre de HashSet ?
La couche inférieure de HashSet est implémentée par HashMapLa valeur de HashSet est stockée dans la clé de HashMapLa valeur de HashMap est unifiée comme PRESENTQuelle est la différence entre ArrayList et LinkedList ?
La différence la plus évidente est que la structure de données sous-jacente d'ArrrayList est un tableau et prend en charge l'accès aléatoire, tandis que la structure de données sous-jacente de LinkedList est une liste chaînée circulaire bidirectionnelle et ne prend pas en charge l'accès aléatoire. . Pour accéder à un élément à l'aide d'un indice, la complexité temporelle de ArrayList est O(1), tandis que celle de LinkedList est O(n).Comment convertir entre tableau et liste ?
Convertir la liste en tableau : appelez la méthode toArray d'ArrayList. Convertir un tableau en Liste : appelez la méthode asList de Arrays.Quelle est la différence entre ArrayList et Vector ?
Vector est synchronisé, mais ArrayList ne l'est pas. Cependant, si vous souhaitez apporter des modifications à la liste lors d'une itération, vous devez utiliser CopyOnWriteArrayList. ArrayList est plus rapide que Vector car il est synchronisé et ne sera pas surchargé. ArrayList est plus polyvalent car nous pouvons facilement obtenir des listes synchronisées et des listes en lecture seule à l'aide de la classe utilitaire Collections.Quelle est la différence entre Array et ArrayList ?
Quelle est la différence entre poll() et remove() dans la file d'attente ?
Poll() et Remove() suppriment tous deux un élément de la file d'attente, mais poll() retournera vide s'il ne parvient pas à obtenir l'élément, mais Remove() lèvera une exception lorsqu'il échoue.Quelles classes de collection sont thread-safe ?
vecteur : Il dispose d'un mécanisme de synchronisation de plus (sécurité des threads) que arraylist. En raison de sa faible efficacité, son utilisation n'est plus recommandée. Dans les applications Web, en particulier les pages frontales, l'efficacité (vitesse de réponse des pages) est souvent une priorité.
statck : classe de pile, premier entré, dernier sorti.
hashtable : elle est plus thread-safe que hashmap.
énumération : Énumération, équivalent à l'itérateur.
Qu'est-ce qu'un itérateur ?
Un itérateur est un modèle de conception qui est un objet qui parcourt et sélectionne des objets dans une séquence sans que le développeur ait besoin de connaître la structure sous-jacente de la séquence. Les itérateurs sont souvent appelés objets « légers » car ils sont peu coûteux à créer.
Comment utiliser Iterator ? Quelles sont les caractéristiques ?
La fonction Iterator en Java est relativement simple et ne peut se déplacer que dans une seule direction :
(1) Utilisez la méthode iterator() pour demander au conteneur de renvoyer un Itérateur. La première fois que la méthode next() de l’Iterator est appelée, elle renvoie le premier élément de la séquence. Remarque : la méthode iterator() est l'interface java.lang.Iterable et est héritée par Collection.
(2) Utilisez next() pour obtenir l'élément suivant de la séquence.
(3) Utilisez hasNext() pour vérifier s'il y a encore des éléments dans la séquence.
(4) Utilisez Remove() pour supprimer l'élément nouvellement renvoyé par l'itérateur.
Iterator est l'implémentation la plus simple de l'itérateur Java. ListIterator conçu pour List a plus de fonctions. Il peut parcourir List dans deux directions et peut également insérer et supprimer des éléments de List.
Quelle est la différence entre Iterator et ListIterator ?
Iterator peut être utilisé pour parcourir les collections Set et List, mais ListIterator ne peut être utilisé que pour parcourir List.
Iterator ne peut parcourir une collection que vers l'avant, tandis que ListIterator peut parcourir à la fois vers l'avant et vers l'arrière.
ListIterator implémente l'interface Iterator et inclut d'autres fonctions, telles que l'ajout d'éléments, le remplacement d'éléments, l'obtention de l'index des éléments précédents et suivants, etc.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Guide du nombre parfait en Java. Nous discutons ici de la définition, comment vérifier le nombre parfait en Java ?, des exemples d'implémentation de code.

Guide de Weka en Java. Nous discutons ici de l'introduction, de la façon d'utiliser Weka Java, du type de plate-forme et des avantages avec des exemples.

Guide du nombre de Smith en Java. Nous discutons ici de la définition, comment vérifier le numéro Smith en Java ? exemple avec implémentation de code.

Dans cet article, nous avons conservé les questions d'entretien Java Spring les plus posées avec leurs réponses détaillées. Pour que vous puissiez réussir l'interview.

Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

Guide de TimeStamp to Date en Java. Ici, nous discutons également de l'introduction et de la façon de convertir l'horodatage en date en Java avec des exemples.

Les capsules sont des figures géométriques tridimensionnelles, composées d'un cylindre et d'un hémisphère aux deux extrémités. Le volume de la capsule peut être calculé en ajoutant le volume du cylindre et le volume de l'hémisphère aux deux extrémités. Ce tutoriel discutera de la façon de calculer le volume d'une capsule donnée en Java en utilisant différentes méthodes. Formule de volume de capsule La formule du volume de la capsule est la suivante: Volume de capsule = volume cylindrique volume de deux hémisphères volume dans, R: Le rayon de l'hémisphère. H: La hauteur du cylindre (à l'exclusion de l'hémisphère). Exemple 1 entrer Rayon = 5 unités Hauteur = 10 unités Sortir Volume = 1570,8 unités cubes expliquer Calculer le volume à l'aide de la formule: Volume = π × r2 × h (4

PHP et Python ont chacun leurs propres avantages, et le choix doit être basé sur les exigences du projet. 1.Php convient au développement Web, avec une syntaxe simple et une efficacité d'exécution élevée. 2. Python convient à la science des données et à l'apprentissage automatique, avec une syntaxe concise et des bibliothèques riches.
