Partager via


HashSet Classe

Définition

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

[Android.Runtime.Register("java/util/HashSet", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class HashSet : Java.Util.AbstractSet, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/util/HashSet", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type HashSet = class
    inherit AbstractSet
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface ICloneable
    interface ISet
    interface ICollection
    interface IIterable
Héritage
Dérivé
Attributs
Implémente

Remarques

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance). Il ne garantit aucune garantie quant à l’ordre d’itération de l’ensemble ; en particulier, elle ne garantit pas que l’ordre restera constant au fil du temps. Cette classe autorise l’élément null .

Cette classe offre des performances de temps constantes pour les opérations de base (add, removecontains et size), en supposant que la fonction de hachage disperse correctement les éléments entre les compartiments. L’itération sur ce jeu nécessite un temps proportionnel à la somme de la taille de l’instance HashSet (le nombre d’éléments) ainsi que de la « capacité » de l’instance de stockage HashMap (le nombre de compartiments). Par conséquent, il est très important de ne pas définir la capacité initiale trop élevée (ou le facteur de charge trop faible) si les performances d’itération sont importantes.

<>notez que cette implémentation n’est pas synchronisée.</strong> Si plusieurs threads accèdent simultanément à un jeu de hachage et qu’au moins un des threads modifie le jeu, il doit être synchronisé en externe. Cela s’effectue généralement en synchronisant sur un objet qui encapsule naturellement l’ensemble.

S’il n’existe aucun objet de ce type, l’ensemble doit être « encapsulé » à l’aide de la Collections#synchronizedSet Collections.synchronizedSet méthode. Cette opération est optimale au moment de la création pour empêcher l’accès non synchronisé accidentel au jeu :

Set s = Collections.synchronizedSet(new HashSet(...));

Les itérateurs retournés par la méthode de iterator cette classe sont rapides : si l’ensemble est modifié à tout moment après la création de l’itérateur, sauf par le biais de la propre remove méthode de l’itérateur, l’itérateur lève un ConcurrentModificationException. Par conséquent, face à la modification simultanée, l’itérateur échoue rapidement et correctement, plutôt que de risquer un comportement arbitraire et non déterministe à un moment indéterminé à l’avenir.

Notez que le comportement de défaillance rapide d’un itérateur ne peut pas être garanti, en général, impossible d’apporter des garanties difficiles en présence d’une modification simultanée non synchronisée. Les itérateurs à vitesse d’échec lèvent ConcurrentModificationException un meilleur effort. Par conséquent, il serait incorrect d’écrire un programme qui dépendait de cette exception pour son exactitude : le comportement d’itérateur à échec doit être utilisé uniquement pour détecter les bogues.

Cette classe est membre de Java Collections Framework.

Ajouté dans la version 1.2.

Documentation Java pour java.util.HashSet.

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

Constructeurs

HashSet()

Construit un nouvel ensemble vide ; l’instance de stockage HashMap a la capacité initiale par défaut (16) et le facteur de charge (0).

HashSet(ICollection)

Construit un nouveau jeu contenant les éléments de la collection spécifiée.

HashSet(Int32)

Construit un nouvel ensemble vide ; l’instance de stockage HashMap a la capacité initiale spécifiée et le facteur de charge par défaut (0.

HashSet(Int32, Single)

Construit un nouvel ensemble vide ; l’instance de stockage HashMap a la capacité initiale spécifiée et le facteur de charge spécifié.

HashSet(IntPtr, JniHandleOwnership)

Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime.

Propriétés

Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
IsEmpty

À ajouter

(Hérité de AbstractCollection)
JniIdentityHashCode

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
JniPeerMembers

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

PeerReference

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
ThresholdClass

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

ThresholdType

Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code.

Méthodes

Add(Object)

À ajouter

(Hérité de AbstractCollection)
AddAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
Clear()

À ajouter

(Hérité de AbstractCollection)
Clone()

Retourne une copie superficielle de cette HashSet instance : les éléments eux-mêmes ne sont pas clonés.

Contains(Object)

À ajouter

(Hérité de AbstractCollection)
ContainsAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
Dispose()

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
Dispose(Boolean)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
GetHashCode()

Retourne une valeur de code de hachage pour l'objet.

(Hérité de Object)
Iterator()

Retourne un itérateur sur les éléments de cet ensemble.

JavaFinalize()

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
Remove(Object)

À ajouter

(Hérité de AbstractCollection)
RemoveAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
RetainAll(ICollection)

À ajouter

(Hérité de AbstractCollection)
SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
Size()

Retourne le nombre d’éléments de cet ensemble (sa cardinalité).

Spliterator()

Crée une <>liaison em late-binding</em> et <em>fail-fast</em>Spliterator sur les éléments de cet ensemble.

ToArray()

À ajouter

(Hérité de AbstractCollection)
ToArray(Object[])

À ajouter

(Hérité de AbstractCollection)
ToArray<T>()

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
ToString()

Retourne une représentation de chaîne de l'objet.

(Hérité de Object)
UnregisterFromRuntime()

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti< par> em>ou <em>interrompu/em>,< ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti< par> em>ou <em>interrompu/em>,< ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)

Implémentations d’interfaces explicites

IJavaPeerable.Disposed()

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
IJavaPeerable.DisposeUnlessReferenced()

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
IJavaPeerable.Finalized()

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
IJavaPeerable.JniManagedPeerState

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

(Hérité de Object)

Méthodes d’extension

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

GetJniTypeName(IJavaPeerable)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

ToEnumerable(IIterable)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

ToEnumerable<T>(IIterable)

Cette classe implémente l’interface Set , sauvegardée par une table de hachage (en fait une HashMap instance).

S’applique à