TreeMap Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Implementasi berbasis NavigableMap
pohon Merah-Hitam.
[Android.Runtime.Register("java/util/TreeMap", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public class TreeMap : Java.Util.AbstractMap, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable, Java.Util.INavigableMap
[<Android.Runtime.Register("java/util/TreeMap", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type TreeMap = class
inherit AbstractMap
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
interface INavigableMap
interface ISortedMap
interface IMap
- Warisan
- Atribut
- Penerapan
Keterangan
Implementasi berbasis NavigableMap
pohon Merah-Hitam. Peta diurutkan sesuai dengan urutan alami yang Sebanding dari kuncinya, atau oleh Comparator
yang disediakan pada waktu pembuatan peta, tergantung pada konstruktor mana yang digunakan.
Implementasi ini memberikan biaya waktu log(n) yang dijamin untuk containsKey
operasi , get
, put
dan remove
. Algoritma adalah adaptasi dari mereka yang ada di Cormen, Leiserson, dan Rivest em <>Pengantar Algoritma</em>.
Perhatikan bahwa pengurutan yang dikelola oleh peta pohon, seperti peta yang diurutkan, dan apakah komparatata eksplisit disediakan atau tidak, harus <>konsisten dengan /em> jika peta yang diurutkan ini adalah untuk mengimplementasikan Map
antarmuka dengan equals
<benar. (Lihat Comparable
atau Comparator
untuk definisi yang tepat dari <em>konsisten dengan equals</em>.) Ini karena Map
antarmuka didefinisikan dalam hal equals
operasi, tetapi peta yang diurutkan melakukan semua perbandingan kunci menggunakan metode (atau compare
) -nya compareTo
, sehingga dua kunci yang dianggap sama dengan metode ini adalah, dari sudut sudut peta yang diurutkan, sama. Perilaku peta <yang diurutkan em>didefinisikan<> dengan baik bahkan jika urutannya tidak konsisten dengan equals
; itu hanya gagal mematuhi kontrak Map
umum antarmuka.
<kuat>Perhatikan bahwa implementasi ini tidak disinkronkan.</strong> Jika beberapa utas mengakses peta secara bersamaan, dan setidaknya salah satu utas memodifikasi peta secara struktural, maka <harus></em> disinkronkan secara eksternal. (Modifikasi struktural adalah operasi apa pun yang menambahkan atau menghapus satu atau beberapa pemetaan; hanya mengubah nilai yang terkait dengan kunci yang ada bukanlah modifikasi struktural.) Ini biasanya dicapai dengan menyinkronkan pada beberapa objek yang secara alami merangkum peta. Jika tidak ada objek seperti itu, peta harus "dibungkus" menggunakan Collections#synchronizedSortedMap Collections.synchronizedSortedMap
metode . Ini paling baik dilakukan pada waktu pembuatan, untuk mencegah akses tidak disengaja yang tidak disinkronkan ke peta:
SortedMap m = Collections.synchronizedSortedMap(new TreeMap(...));
Iterator yang dikembalikan oleh iterator
metode koleksi yang dikembalikan oleh semua "metode tampilan koleksi" kelas ini adalah <em>fail-fast</em>: jika peta dimodifikasi secara struktural kapan saja setelah iterator dibuat, dengan cara apa pun kecuali melalui metode iterator sendiri remove
, iterator akan melemparkan ConcurrentModificationException
. Dengan demikian, dalam menghadapi modifikasi bersamaan, iterator gagal dengan cepat dan bersih, daripada berisiko perilaku arbitrer dan non-deterministik pada waktu yang tidak ditentukan di masa depan.
Perhatikan bahwa perilaku fail-fast dari iterator tidak dapat dijamin apa adanya, umumnya, tidak mungkin untuk membuat jaminan keras dengan adanya modifikasi bersamaan yang tidak disinkronkan. Iterator fail-fast melempar ConcurrentModificationException
berdasarkan upaya terbaik. Oleh karena itu, akan salah untuk menulis program yang bergantung pada pengecualian ini untuk kebenarannya: <em>perilaku iterator yang gagal-cepat harus digunakan hanya untuk mendeteksi bug.</Em>
Semua Map.Entry
pasangan yang dikembalikan oleh metode di kelas ini dan tampilannya mewakili rekam jepret pemetaan pada saat mereka diproduksi. Mereka tidak <kuat>tidak< / kuat> mendukung Entry.setValue
metode . (Perhatikan bagaimanapun bahwa dimungkinkan untuk mengubah pemetaan di peta terkait menggunakan put
.)
Kelas ini adalah anggota Java Collections Framework.
Ditambahkan dalam 1.2.
Dokumentasi Java untuk java.util.TreeMap
.
Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.
Konstruktor
TreeMap() |
Membangun peta pohon baru yang kosong, menggunakan urutan alami kuncinya. |
TreeMap(IComparator) |
Membangun peta pohon baru yang kosong, diurutkan sesuai dengan komparator yang diberikan. |
TreeMap(IDictionary) |
Membuat peta pohon baru yang berisi pemetaan yang sama dengan peta yang diberikan, yang diurutkan sesuai dengan <>pengurutan</em> alami kuncinya. |
TreeMap(IntPtr, JniHandleOwnership) |
Konstruktor yang digunakan saat membuat representasi terkelola objek JNI; dipanggil oleh runtime. |
Properti
Class |
Mengembalikan kelas runtime dari . |
Handle |
Handel ke instans Android yang mendasar. (Diperoleh dari Object) |
IsEmpty |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
JniIdentityHashCode |
Implementasi berbasis |
JniPeerMembers |
Implementasi berbasis |
PeerReference |
Implementasi berbasis |
ThresholdClass |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
ThresholdType |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
Metode
CeilingEntry(Object) |
Implementasi berbasis |
CeilingKey(Object) |
Ditambahkan dalam 1. |
Clear() |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
Clone() |
Mengembalikan salinan dangkal instans ini |
Comparator() |
Mengembalikan komparator yang digunakan untuk membandingkan kunci dalam peta yang diurutkan ini, atau null jika pengurutan alami sedang digunakan. |
ContainsKey(Object) |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
ContainsValue(Object) |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
DescendingKeySet() |
Ditambahkan dalam 1. |
DescendingMap() |
Ditambahkan dalam 1. |
Dispose() |
Implementasi berbasis |
Dispose(Boolean) |
Implementasi berbasis |
EntrySet() |
Mengembalikan |
Equals(Object) |
Menunjukkan apakah beberapa objek lain "sama dengan" yang satu ini. (Diperoleh dari Object) |
FirstEntry() |
Mengembalikan pemetaan kunci-nilai yang terkait dengan kunci terkecil dalam peta ini, atau |
FirstKey() |
Mengembalikan kunci paling sedikit dalam peta yang diurutkan ini. |
FloorEntry(Object) |
Implementasi berbasis |
FloorKey(Object) |
Ditambahkan dalam 1. |
ForEach(IBiConsumer) |
Implementasi berbasis |
Get(Object) |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
GetHashCode() |
Mengembalikan nilai kode hash untuk objek . (Diperoleh dari Object) |
HeadMap(Object, Boolean) |
Ditambahkan dalam 1. |
HeadMap(Object) |
Implementasi berbasis |
HigherEntry(Object) |
Implementasi berbasis |
HigherKey(Object) |
Ditambahkan dalam 1. |
JavaFinalize() |
Dipanggil oleh pengumpul sampah pada objek ketika pengumpulan sampah menentukan bahwa tidak ada lagi referensi ke objek. (Diperoleh dari Object) |
KeySet() |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
LastEntry() |
Mengembalikan pemetaan nilai kunci yang terkait dengan kunci terbesar dalam peta ini, atau |
LastKey() |
Mengembalikan kunci terbesar dalam peta yang diurutkan ini. |
LowerEntry(Object) |
Implementasi berbasis |
LowerKey(Object) |
Ditambahkan dalam 1. |
NavigableKeySet() |
Ditambahkan dalam 1. |
Notify() |
Membangunkan satu utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
NotifyAll() |
Membangunkan semua utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
PollFirstEntry() |
Menghapus dan mengembalikan pemetaan nilai kunci yang terkait dengan kunci paling sedikit dalam peta ini, atau |
PollLastEntry() |
Menghapus dan mengembalikan pemetaan nilai kunci yang terkait dengan kunci terbesar di peta ini, atau |
Put(Object, Object) |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
PutAll(IDictionary) |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
Remove(Object) |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
Replace(Object, Object, Object) |
Implementasi berbasis |
Replace(Object, Object) |
Implementasi berbasis |
ReplaceAll(IBiFunction) |
Implementasi berbasis |
SetHandle(IntPtr, JniHandleOwnership) |
Handle Mengatur properti. (Diperoleh dari Object) |
Size() |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
SubMap(Object, Boolean, Object, Boolean) |
Ditambahkan dalam 1. |
SubMap(Object, Object) |
Implementasi berbasis |
TailMap(Object, Boolean) |
Ditambahkan dalam 1. |
TailMap(Object) |
Implementasi berbasis |
ToArray<T>() |
Implementasi berbasis |
ToString() |
Mengembalikan representasi string objek. (Diperoleh dari Object) |
UnregisterFromRuntime() |
Implementasi berbasis |
Values() |
Untuk ditambahkan (Diperoleh dari AbstractMap) |
Wait() |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <diberitahu></em> atau <em>terganggu</em>. (Diperoleh dari Object) |
Wait(Int64, Int32) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah real time telah berlalu. (Diperoleh dari Object) |
Wait(Int64) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah real time telah berlalu. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
IJavaPeerable.Disposed() |
Implementasi berbasis |
IJavaPeerable.DisposeUnlessReferenced() |
Implementasi berbasis |
IJavaPeerable.Finalized() |
Implementasi berbasis |
IJavaPeerable.JniManagedPeerState |
Implementasi berbasis |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Implementasi berbasis |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Implementasi berbasis |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Implementasi berbasis |
Metode Ekstensi
JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Bahasa Umum Android. |
JavaCast<TResult>(IJavaObject) |
Implementasi berbasis |
GetJniTypeName(IJavaPeerable) |
Implementasi berbasis |