TreeSet Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Implementazione NavigableSet
basata su un oggetto TreeMap
.
[Android.Runtime.Register("java/util/TreeSet", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class TreeSet : Java.Util.AbstractSet, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.INavigableSet
[<Android.Runtime.Register("java/util/TreeSet", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type TreeSet = class
inherit AbstractSet
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
interface INavigableSet
interface ISortedSet
interface ISet
interface ICollection
interface IIterable
- Ereditarietà
- Attributi
- Implementazioni
Commenti
Implementazione NavigableSet
basata su un oggetto TreeMap
. Gli elementi vengono ordinati usando l'ordinamento naturale confrontabile o da un Comparator
oggetto fornito in fase di creazione impostata, a seconda del costruttore utilizzato.
Questa implementazione fornisce costi di tempo di log(n) garantiti per le operazioni di base (add
remove
e contains
).
Si noti che l'ordinamento gestito da un set (indipendentemente dal fatto che venga fornito o meno un confronto esplicito) deve essere coerente con gli stessi se deve implementare correttamente l'interfaccia Set
. Vedere Comparable
o Comparator
per una definizione precisa di coerenza con equals. Ciò è dovuto al fatto che l'interfaccia Set
è definita in termini di equals
operazione, ma un'istanza TreeSet
esegue tutti i confronti di elementi usando il compareTo
relativo metodo (o compare
), quindi due elementi considerati uguali da questo metodo sono, dal punto di vista del set, uguale. Il comportamento di un set è ben definito anche se l'ordinamento è incoerente con uguale; non è sufficiente rispettare il contratto generale dell'interfaccia Set
.
<si>noti che questa implementazione non è sincronizzata.</strong> Se più thread accedono contemporaneamente a un set di alberi e almeno uno dei thread modifica il set, deve essere sincronizzato esternamente. Questa operazione viene in genere eseguita sincronizzando su un oggetto che incapsula naturalmente il set. Se non esiste alcun oggetto di questo tipo, il set deve essere "sottoposto a wrapping" usando il Collections#synchronizedSortedSet Collections.synchronizedSortedSet
metodo . Questa operazione viene eseguita al momento della creazione per evitare l'accesso accidentale non sincronizzato al set:
SortedSet s = Collections.synchronizedSortedSet(new TreeSet(...));
Gli iteratori restituiti dal metodo di iterator
questa classe sono di tipo fail-fast: se il set viene modificato in qualsiasi momento dopo la creazione dell'iteratore, ad eccezione del metodo dell'iteratore, remove
l'iteratore genererà un'eccezione ConcurrentModificationException
. Di conseguenza, in presenza di modifiche simultanee, l'iteratore ha esito negativo rapidamente e pulito, anziché rischiare un comportamento arbitrario non deterministico in un momento indeterminato in futuro.
Si noti che il comportamento rapido di errore di un iteratore non può essere garantito così com'è, in generale, impossibile rendere eventuali garanzie difficili in presenza di modifiche simultanee non sincronizzate. Gli iteratori veloci a errori generano ConcurrentModificationException
un'operazione ottimale. Pertanto, sarebbe sbagliato scrivere un programma che dipende da questa eccezione per la correttezza: il comportamento rapido degli iteratori deve essere usato solo per rilevare i bug.
Questa classe è un membro di Java Collections Framework.
Aggiunta nella versione 1.2.
Documentazione java per java.util.TreeSet
.
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.
Costruttori
TreeSet() |
Costruisce un nuovo set di alberi vuoto, ordinato in base all'ordinamento naturale dei relativi elementi. |
TreeSet(ICollection) |
Costruisce un nuovo set di alberi contenente gli elementi nella raccolta specificata, ordinati in base all'ordinamento naturale dei relativi elementi. |
TreeSet(IComparator) |
Costruisce un nuovo set di alberi vuoto, ordinato in base al confronto specificato. |
TreeSet(IntPtr, JniHandleOwnership) |
Costruttore usato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime. |
TreeSet(ISortedSet) |
Costruisce un nuovo set di alberi contenente gli stessi elementi e usa lo stesso ordinamento del set ordinato specificato. |
Proprietà
Class |
Restituisce la classe di runtime di questo |
Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
IsEmpty |
Da aggiungere (Ereditato da AbstractCollection) |
JniIdentityHashCode |
Implementazione |
JniPeerMembers |
Implementazione |
PeerReference |
Implementazione |
ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
Metodi
Add(Object) |
Da aggiungere (Ereditato da AbstractCollection) |
AddAll(ICollection) |
Da aggiungere (Ereditato da AbstractCollection) |
Ceiling(Object) |
Aggiunta in 1. |
Clear() |
Da aggiungere (Ereditato da AbstractCollection) |
Clone() |
Restituisce una copia superficiale di questa |
Comparator() |
Restituisce il comparatore utilizzato per confrontare gli elementi in questo |
Contains(Object) |
Da aggiungere (Ereditato da AbstractCollection) |
ContainsAll(ICollection) |
Da aggiungere (Ereditato da AbstractCollection) |
DescendingIterator() |
Restituisce un iteratore sugli elementi in questo set in ordine decrescente. |
DescendingSet() |
Restituisce una visualizzazione in ordine inverso degli elementi contenuti in questo set. |
Dispose() |
Implementazione |
Dispose(Boolean) |
Implementazione |
Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
First() |
Restituisce il primo elemento di questo set. |
Floor(Object) |
Aggiunta in 1. |
GetHashCode() |
Restituisce un valore del codice hash per l'oggetto. (Ereditato da Object) |
HeadSet(Object, Boolean) |
Implementazione |
HeadSet(Object) |
Implementazione |
Higher(Object) |
Aggiunta in 1. |
Iterator() |
Restituisce un iteratore sugli elementi in questo set in ordine crescente. |
JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
Last() |
Restituisce l'ultimo elemento di questo set. |
Lower(Object) |
Aggiunta in 1. |
Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
NotifyAll() |
Riattiva tutti i thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
PollFirst() |
Aggiunta in 1. |
PollLast() |
Aggiunta in 1. |
Remove(Object) |
Da aggiungere (Ereditato da AbstractCollection) |
RemoveAll(ICollection) |
Da aggiungere (Ereditato da AbstractCollection) |
RetainAll(ICollection) |
Da aggiungere (Ereditato da AbstractCollection) |
SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
Size() |
Restituisce il numero di elementi in questo set (cardinalità). |
Spliterator() |
Crea un <elemento em>"Spliterator. |
SubSet(Object, Boolean, Object, Boolean) |
Implementazione |
SubSet(Object, Object) |
Implementazione |
TailSet(Object, Boolean) |
Implementazione |
TailSet(Object) |
Implementazione |
ToArray() |
Da aggiungere (Ereditato da AbstractCollection) |
ToArray(Object[]) |
Da aggiungere (Ereditato da AbstractCollection) |
ToArray<T>() |
Implementazione |
ToString() |
Restituisce una rappresentazione di stringa dell'oggetto. (Ereditato da Object) |
UnregisterFromRuntime() |
Implementazione |
Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo>< una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
IJavaPeerable.Disposed() |
Implementazione |
IJavaPeerable.DisposeUnlessReferenced() |
Implementazione |
IJavaPeerable.Finalized() |
Implementazione |
IJavaPeerable.JniManagedPeerState |
Implementazione |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Implementazione |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Implementazione |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Implementazione |
Metodi di estensione
JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
JavaCast<TResult>(IJavaObject) |
Implementazione |
GetJniTypeName(IJavaPeerable) |
Implementazione |
ToEnumerable(IIterable) |
Implementazione |
ToEnumerable<T>(IIterable) |
Implementazione |