Condividi tramite


ISet Interfaccia

Definizione

Raccolta che non contiene elementi duplicati.

[Android.Runtime.Register("java/util/Set", "", "Java.Util.ISetInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface ISet : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ICollection
[<Android.Runtime.Register("java/util/Set", "", "Java.Util.ISetInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type ISet = interface
    interface ICollection
    interface IIterable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Derivato
Attributi
Implementazioni

Commenti

Raccolta che non contiene elementi duplicati. Più formalmente, i set non contengono alcuna coppia di elementi e1 e e2 in modo che e1.equals(e2)e al massimo un elemento Null. Come implicito nel nome, questa interfaccia modella l'astrazione del set matematico.

L'interfaccia Set inserisce clausole aggiuntive, oltre a quelle ereditate dall'interfaccia Collection , sui contratti di tutti i costruttori e sui contratti dei addmetodi , equals e hashCode . Anche le dichiarazioni per altri metodi ereditati sono incluse qui per praticità. Le specifiche che accompagnano queste dichiarazioni sono state personalizzate per l'interfaccia Set , ma non contengono clausole aggiuntive.

La clausola aggiuntiva sui costruttori è, non sorprendentemente, che tutti i costruttori devono creare un set che non contiene elementi duplicati (come definito in precedenza).

Nota: è necessario prestare molta attenzione se gli oggetti modificabili vengono utilizzati come elementi impostati. Il comportamento di un set non viene specificato se il valore di un oggetto viene modificato in modo che influisca sui equals confronti mentre l'oggetto è un elemento nel set. Un caso particolare di questo divieto è che non è consentito che un insieme contenga se stesso come elemento.

Alcune implementazioni impostate hanno restrizioni sugli elementi che possono contenere. Ad esempio, alcune implementazioni impediscono gli elementi Null e alcune hanno restrizioni sui tipi dei relativi elementi. Il tentativo di aggiungere un elemento non idoneo genera un'eccezione deselezionata, in genere NullPointerException o ClassCastException. Il tentativo di eseguire una query sulla presenza di un elemento non idoneo può generare un'eccezione oppure può semplicemente restituire false; alcune implementazioni mostreranno il comportamento precedente e alcune mostreranno quest'ultima. In genere, il tentativo di un'operazione su un elemento non idoneo il cui completamento non comporta l'inserimento di un elemento non idoneo nel set può generare un'eccezione oppure può avere esito positivo, all'opzione dell'implementazione. Tali eccezioni vengono contrassegnate come "facoltative" nella specifica per questa interfaccia.

<h2>"unmodifiable">Unmodifiable Sets</h2>

I Set#of(Object...) Set.of metodi factory statici e Set#copyOf Set.copyOf offrono un modo pratico per creare set non modificabili. Le Set istanze create da questi metodi presentano le caratteristiche seguenti:

<ul>li Sono imodificabile<>/i>.<>< Gli elementi non possono essere aggiunti o rimossi. La chiamata a qualsiasi metodo mutatore nel set causerà UnsupportedOperationException sempre la generazione. Tuttavia, se gli elementi contenuti sono modificabili, è possibile che l'oggetto Set si comporti in modo incoerente o che il relativo contenuto venga modificato. <li>Non consentono null elementi. I tentativi di crearli con null gli elementi comportano NullPointerException. <li>Sono serializzabili se tutti gli elementi sono serializzabili. <li>Rifiutano elementi duplicati in fase di creazione. Gli elementi duplicati passati a un metodo factory statico generano IllegalArgumentException. <li>L'ordine di iterazione degli elementi set non è specificato ed è soggetto a modifiche. <li>Sono basati sul valore. I programmatori devono considerare le istanze che sono #equals(Object) uguali a intercambiabili e non devono usarle per la sincronizzazione o possono verificarsi comportamenti imprevedibili. Ad esempio, in una versione futura, la sincronizzazione potrebbe non riuscire. I chiamanti non devono fare ipotesi sull'identità delle istanze restituite. Le factory sono gratuite per creare nuove istanze o riutilizzare quelle esistenti. <li>Vengono serializzati come specificato nella pagina Modulo serializzato. </ul>

Questa interfaccia è un membro di Java Collections Framework.

Aggiunta nella versione 1.2.

Documentazione java per java.util.Set.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Proprietà

Handle

Ottiene il valore JNI dell'oggetto Android sottostante.

(Ereditato da IJavaObject)
IsEmpty

Restituisce true se questo set non contiene elementi.

JniIdentityHashCode

Restituisce il valore di java.lang.System.identityHashCode() per l'istanza di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)
JniManagedPeerState

Stato del peer gestito.

(Ereditato da IJavaPeerable)
JniPeerMembers

Supporto per l'accesso ai membri e la chiamata.

(Ereditato da IJavaPeerable)
PeerReference

Restituisce un JniObjectReference oggetto dell'istanza dell'oggetto Java di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)

Metodi

Add(Object)

Aggiunge l'elemento specificato a questo set se non è già presente (operazione facoltativa).

AddAll(ICollection)

Aggiunge tutti gli elementi della raccolta specificata a questo set se non sono già presenti (operazione facoltativa).

Clear()

Rimuove tutti gli elementi da questo set (operazione facoltativa).

Contains(Object)

Restituisce true se questo set contiene l'elemento specificato.

ContainsAll(ICollection)

Restituisce true se questo set contiene tutti gli elementi della raccolta specificata.

CopyOf(ICollection)

Restituisce un set non modificabile contenente gli elementi dell'insieme specificato.

Disposed()

Chiamato quando l'istanza è stata eliminata.

(Ereditato da IJavaPeerable)
DisposeUnlessReferenced()

Se non sono presenti riferimenti in sospeso a questa istanza, chiama Dispose(); in caso contrario, non esegue alcuna operazione.

(Ereditato da IJavaPeerable)
Equals(Object)

Confronta l'oggetto specificato con questo set per verificarne l'uguaglianza.

Finalized()

Chiamato quando l'istanza è stata finalizzata.

(Ereditato da IJavaPeerable)
ForEach(IConsumer)

Esegue l'azione specificata per ogni elemento di Iterable finché tutti gli elementi non sono stati elaborati o l'azione genera un'eccezione.

(Ereditato da IIterable)
GetHashCode()

Restituisce il valore del codice hash per questo set.

Iterator()

Restituisce un iteratore sugli elementi di questo set.

Of()

Restituisce un set non modificabile contenente zero elementi.

Of(Object, Object, Object, Object, Object, Object, Object, Object, Object, Object)

Restituisce un set non modificabile contenente dieci elementi.

Of(Object, Object, Object, Object, Object, Object, Object, Object, Object)

Restituisce un set non modificabile contenente nove elementi.

Of(Object, Object, Object, Object, Object, Object, Object, Object)

Restituisce un set non modificabile contenente otto elementi.

Of(Object, Object, Object, Object, Object, Object, Object)

Restituisce un set non modificabile contenente sette elementi.

Of(Object, Object, Object, Object, Object, Object)

Restituisce un set non modificabile contenente sei elementi.

Of(Object, Object, Object, Object, Object)

Restituisce un set non modificabile contenente cinque elementi.

Of(Object, Object, Object, Object)

Restituisce un set non modificabile contenente quattro elementi.

Of(Object, Object, Object)

Restituisce un set non modificabile contenente tre elementi.

Of(Object, Object)

Restituisce un set non modificabile contenente due elementi.

Of(Object)

Restituisce un set non modificabile contenente un elemento.

Of(Object[])

Restituisce un set non modificabile contenente un numero arbitrario di elementi.

Remove(Object)

Rimuove l'elemento specificato da questo set se presente (operazione facoltativa).

RemoveAll(ICollection)

Rimuove da questo set tutti i relativi elementi contenuti nella raccolta specificata (operazione facoltativa).

RemoveIf(IPredicate)

Rimuove tutti gli elementi di questa raccolta che soddisfano il predicato specificato.

(Ereditato da ICollection)
RetainAll(ICollection)

Mantiene solo gli elementi di questo set contenuti nella raccolta specificata (operazione facoltativa).

SetJniIdentityHashCode(Int32)

Impostare il valore restituito da JniIdentityHashCode.

(Ereditato da IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Raccolta che non contiene elementi duplicati.

(Ereditato da IJavaPeerable)
SetPeerReference(JniObjectReference)

Impostare il valore restituito da PeerReference.

(Ereditato da IJavaPeerable)
Size()

Restituisce il numero di elementi in questo set (cardinalità).

Spliterator()

Crea un Spliterator oggetto sugli elementi descritti da questo Iterableoggetto .

(Ereditato da IIterable)
ToArray()

Restituisce una matrice contenente tutti gli elementi di questo set.

ToArray(IIntFunction)

Restituisce una matrice contenente tutti gli elementi di questa raccolta, utilizzando la funzione fornita generator per allocare la matrice restituita.

(Ereditato da ICollection)
ToArray(Object[])

Restituisce una matrice contenente tutti gli elementi di questo set; Il tipo di runtime della matrice restituita è quello della matrice specificata.

UnregisterFromRuntime()

Annullare la registrazione di questa istanza in modo che il runtime non lo restituisca dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Ereditato da IJavaPeerable)

Implementazioni dell'interfaccia esplicita

IIterable.Spliterator()

Crea un Spliterator oggetto sugli elementi in questo set.

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Raccolta che non contiene elementi duplicati.

GetJniTypeName(IJavaPeerable)

Raccolta che non contiene elementi duplicati.

ToEnumerable(IIterable)

Raccolta che non contiene elementi duplicati.

ToEnumerable<T>(IIterable)

Raccolta che non contiene elementi duplicati.

Si applica a