Koleksiyon
| Son Güncelleme | Kararlı Sürüm | Sürüm Adayı | Beta Sürümü | Alfa Sürümü |
|---|---|---|---|---|
| 11 Mart 2026 | 1.6.0 | - | - | - |
Bağımlılıkları bildirme
Collection'a bağımlılık eklemek için Google Maven deposunu projenize eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.
Uygulamanız veya modülünüz için build.gradle dosyasına ihtiyacınız olan yapıtların bağımlılıklarını ekleyin:
Groovy
dependencies { def collection_version = "1.6.0" implementation "androidx.collection:collection:$collection_version" }
Kotlin
dependencies { val collection_version = "1.6.0" implementation("androidx.collection:collection:$collection_version") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme Bağımlılıkları Ekleme başlıklı makaleyi inceleyin.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz olursa lütfen bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Issue Tracker belgelerini inceleyin.
Sürüm 1.6
Sürüm 1.6.0
11 Mart 2026
androidx.collection:collection-*:1.6.0 iptal edilir. 1.6.0 sürümü bu commit'leri içerir.
1.5.0 sürümünden beri yapılan önemli değişiklikler:
MutableFloatList,MutableDoubleList,MutableIntListiçin bağımsız değişken içermeyen kırpma sürümü eklendi.toMutableOrderedScatterSet,toOrderedScatterSet,toMutableScatterMap,toScatterMap,toMutableScatterSet,toScatterSetuzantı işlevlerini ekleyin.ScatterMapveScatterSetiçin performans iyileştirmeleri.minSdksürümü artık 23.
Sürüm 1.6.0-rc01
11 Şubat 2026
androidx.collection:collection-*:1.6.0-rc01 iptal edilir. 1.6.0-rc01 sürümü bu commit'leri içerir.
Sürüm 1.6.0-beta01
14 Ocak 2026
androidx.collection:collection-*:1.6.0-beta01 iptal edilir. 1.6.0-beta01 sürümü bu commit'leri içerir.
API Değişiklikleri
.toScatterSet()ve.toScatterMap()uzantıları eklendi. Bunlar, değiştirilebilir dönüşüm işlevlerine salt okunur bir alternatif sunar ve kaynak koleksiyonu boş olduğunda ayırma içermeyen tekil öğeler döndürür. (I1769a, b/459867876)MutableScatterMap(source)veMutableScatterSet(source)sözde oluşturucularını standart.toMutableScatterMap()ve.toMutableScatterSet()uzantı işlevleriyle değiştirin. Bu, koleksiyon dönüşümleri için Kotlin kurallarıyla uyumludur. (Ic9ca6, b/459867876)MutableScatterMap(Map)veMutableScatterSet(Set)fabrika işlevlerini ekleyin. Mevcut bir koleksiyonun içeriğiyle önceden doldurulmuş bir dağıtım koleksiyonunu kolayca oluşturmak için bu işlevleri kullanın. (I51d70)
Hata Düzeltmeleri
- Bu kitaplık artık tür kullanımı olan JSpecify nullness ek açıklamalarını kullanıyor. Kotlin geliştiricileri, doğru kullanımı zorunlu kılmak için şu derleyici bağımsız değişkenini kullanmalıdır:
-Xjspecify-annotations=strict(Bu, Kotlin derleyicisinin 2.1.0 sürümünden itibaren varsayılan değerdir) (I05181, b/326456246)
Sürüm 1.6.0-alpha01
27 Ağustos 2025
androidx.collection:collection-*:1.6.0-alpha01 iptal edilir. 1.6.0-alpha01 sürümü bu commit'leri içerir.
API Değişiklikleri
- Kotlin 2.0 ile yayınlanan projelerin kullanılabilmesi için KGP 2.0.0 veya daha yeni bir sürüm gerekir (Idb6b5).
Hata Düzeltmeleri
- Daha önce
SparseArrayCompat, ayrılan aralıkta ancak eklenen aralığın0..size -1dışında olan bir dizin geçirildiğinde valueAt içinnull,keyAtdeğerini döndürüyordu. Belgelendiği gibi, bu davranış hiçbir zaman beklenmedi ve geçerli giriş aralığının dışındaydı. Bu değişiklik, geçersiz bir dizin iletildiğinde bunun yerineIndexOutOfBoundsoluşturacak şekilde bu davranışı düzeltir. (I68453)
Harici Katkı (External Contribution)
Aşağıdaki katkıları için Jake Wharton'a teşekkür ederiz:
- Dahil edilen öğeleri sınırlarken kesme göstergesinin önüne ayırıcı, sonuna ise sonek ekleyerek
joinToStringdavranışını platform koleksiyonlarıyla uyumlu hale getirin. (I1b7e8) ScatterSet.hashCodeartık özyinelemeye (ör. kümenin kendisine eklenmesi) karşı savunma yapmıyor. Bu değişiklik,ScatterMap,HashSetve temel dağılım tabanlı kümelerle (ör.LongSet) uyumlu hale getirir.equalsyönteminin zaten özyinelemeye açık olduğunu vetoStringyönteminin buna karşı koruma sağladığını unutmayın. Her iki davranış da diğer koleksiyonlarla uyumludur. (I9c84a)- Lambda örneği oluşturulmasını önlemek için
ScatterSet.retainAllişlevi artık satır içi. (Ifa4b7) ScatterSet.hashCode, karma hesaplamasında artık kapasitesini kullanmıyor. Bu sayede, eşit içerikler ancak farklı kapasiteler yine de aynı değeri üretiyor. (Ic863b)ScatterMap.asMap()veyaScatterSet.asSet()koleksiyonlarınınkeys,valuesya daentrieskoleksiyonlarının yineleyicisindenext()'dan önceremove()'ı çağırırsanız artıkIllegalStateExceptionoluşturulur. Bu sayede, davranışını normal harita ve küme davranışıyla uyumlu hale getirir. (I71694)
Sürüm 1.5
Sürüm 1.5.0
12 Mart 2025
androidx.collection:collection-*:1.5.0 iptal edilir. 1.5.0 sürümü bu commit'leri içerir.
Sürüm 1.5.0-rc01
26 Şubat 2025
androidx.collection:collection-*:1.5.0-rc01 iptal edilir. 1.5.0-rc01 sürümü bu commit'leri içerir.
Sürüm 1.5.0-beta03
29 Ocak 2025
androidx.collection:collection-*:1.5.0-beta03 iptal edilir. 1.5.0-beta03 sürümü bu commit'leri içerir.
Sürüm 1.5.0-beta02
15 Ocak 2025
androidx.collection:collection-*:1.5.0-beta02 iptal edilir. 1.5.0-beta02 sürümü bu commit'leri içerir.
Sürüm 1.5.0-beta01
11 Aralık 2024
androidx.collection:collection-*:1.5.0-beta01 iptal edilir. 1.5.0-beta01 sürümü bu commit'leri içerir.
API Değişiklikleri
watchosDeviceArm64KMP hedefi ve hedef kotlin 1.9 için destek eklendi (Icf15d, b/364652024)
Sürüm 1.5.0-alpha06
13 Kasım 2024
androidx.collection:collection-*:1.5.0-alpha06 iptal edilir. 1.5.0-alpha06 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
- Tekrarlanan anahtar çakışmalarına neden olan çok sayıda öğe eklenirken
SieveCacheveOrderedScatterSet'de meydana gelebilen kilitlenme sorunu düzeltildi. (Iaaf3d, b/375607736) - wasm hedefini koleksiyon kitaplığına ekleyin. (I66fe3, b/352722444)
Sürüm 1.5.0-alpha05
30 Ekim 2024
androidx.collection:collection-*:1.5.0-alpha05 iptal edilir. 1.5.0-alpha05 sürümü bu commit'leri içerir.
Sürüm 1.5.0-alpha04
16 Ekim 2024
androidx.collection:collection-*:1.5.0-alpha04 iptal edilir. 1.5.0-alpha04 sürümü bu commit'leri içerir.
Sürüm 1.5.0-alpha03
2 Ekim 2024
androidx.collection:collection-*:1.5.0-alpha03 iptal edilir. 1.5.0-alpha03 sürümü bu commit'leri içerir.
API Değişiklikleri
- Kotlin sürümü 1.9'a güncellendi (I1a14c)
Harici Katkı (External Contribution)
containsileri alındı, şu anki zamancontainsKey. Teşekkürler Jake Wharton! (I9362b)- Skaler uzmanlık alanına sahip koleksiyonlar için kapsayıcı oluşturucular ekleyin. Teşekkürler Jake Wharton! (I13179)
Sürüm 1.5.0-alpha02
18 Eylül 2024
androidx.collection:collection-*:1.5.0-alpha02 iptal edilir. 1.5.0-alpha02 sürümü bu commit'leri içerir.
API Değişiklikleri
watchosDeviceArm64platform hedefi için destek eklenir. (I1cc04, b/364652024)
Sürüm 1.5.0-alpha01
4 Eylül 2024
androidx.collection:collection-*:1.5.0-alpha01 iptal edilir. 1.5.0-alpha01 sürümü bu commit'leri içerir.
API Değişiklikleri
OrderedScatterSet, yeni bir sıralı, tahsis içermeyen koleksiyondur (Ic4178)SieveCache, daha iyi isabet oranı özellikleri sunan,LruCacheiçin yeni bir tahsis gerektirmeyen yedektir. (I50a17)IntIntPairveFloatFloatPairiçinpackedValuedahili gösterimini kullanıma sundu. (Ifeb75, b/331853566)- Liste koleksiyonlarındaki içerik dizisine erişim ekleme. (I899d5, b/333903173)
- Çift değerler için optimize edilmiş, liste benzeri bir veri yapısı olan
DoubleListöğesini ekleyin. (Ia10d1, b/315127635)
Hata Düzeltmeleri
- Collections kitaplığı, Kotlin 1.9'u hedefleyecek şekilde taşınıyor (I0782f)
- Birçok koleksiyonu daha verimli olacak şekilde optimize edin. (Ic0566)
Sürüm 1.4
Sürüm 1.4.5
30 Ekim 2024
androidx.collection:collection-*:1.4.5 iptal edilir. 1.4.5 sürümü bu commit'leri içerir.
Sürüm 1.4.4
18 Eylül 2024
androidx.collection:collection-*:1.4.4 iptal edilir. 1.4.4 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
- Boş bir koleksiyon sıralanırken
ArrayIndexOutOfBoundsgeçici çözümü. (I65245)
Sürüm 1.4.3
7 Ağustos 2024
androidx.collection:collection-*:1.4.3 iptal edilir. 1.4.3 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
ScatterMap,ScatterSetve bunların temel varyantlarında oluşabilecek bir bozulma düzeltildi. (I38a4a, b/352560465)- Performans optimizasyonları. Özellikle:
check()verequired()çağrılarını, satır içi istisna oluşturmayan varyantlarla değiştirin. Bu, nihai ikili boyutunu küçültür ve daha da önemlisi i-cache baskısını biraz azaltır.- "Dağılım" koleksiyon ailesinde iyileştirilmiş
removeDeletedMarkers(). Yeni sürüm, silinen işaretçileri 8 işaretçi bir kerede temizler ve bu süreçte daha maliyetli yazma işlemlerini atlar. (Ic0566)
Sürüm 1.4.2
24 Temmuz 2024
androidx.collection:collection-*:1.4.2 iptal edilir. 1.4.2 sürümü bu commit'leri içerir.
Yeni Özellikler
- Ek Kotlin Multiplatform hedefleri içerir:
watchos,tvos,linuxArm64. (b/352543988)
Sürüm 1.4.1
10 Temmuz 2024
androidx.collection:collection-*:1.4.1 iptal edilir. 1.4.1 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
- Yeniden boyutlandırma sırasında silinen işaretleri Harita/Küme'den kaldırın. (7a996c5, b/345960092)
Sürüm 1.4.0
24 Ocak 2024
androidx.collection:collection-*:1.4.0 iptal edilir. 1.4.0 sürümü şu commit'leri içerir.
1.3.0 sürümünden beri yapılan önemli değişiklikler
Temel öğeleri kutulamadan depolamak için yeni ve yüksek verimli koleksiyonlar eklendi:
MutableScatterMapveScatterMap-MutableMapve harita benzeri API'ye sahip sınıflarMutableScatterSet&ScatterSet-MutableSetve Set benzeri API'ye sahip sınıflarMutableObjectListveObjectList-MutableListve liste benzeri API'ye sahip sınıflar
Örneğin, tam sayı anahtarı ve referans türü değeri olan bir harita IntObjectMap<T>'dır. Uzun anahtarlı ve kayan noktalı değer içeren bir harita LongFloatMap. ObjectObjectMap, ScatterMap/MutableScatterMap kapsamında olduğu için bu ada sahip bir sürüm yok.
Sürüm 1.4.0-rc01
10 Ocak 2024
androidx.collection:collection-*:1.4.0-rc01, herhangi bir değişiklik yapılmadan yayınlanır. 1.4.0-rc01 sürümü şu commit'leri içerir.
Sürüm 1.4.0-beta02
29 Kasım 2023
androidx.collection:collection-*:1.4.0-beta02 iptal edilir. 1.4.0-beta02 sürümü şu commit'leri içerir.
Yeni Özellikler
FloatFloatPairperformansında iyileştirme yapıldı. (If5537)
Hata Düzeltmeleri
ScatterMap.asMap()iterator artık yeni örnekler döndürüyor (I28932, b/310365754)
Sürüm 1.4.0-beta01
15 Kasım 2023
androidx.collection:collection-*:1.4.0-beta01 iptal edilir. 1.4.0-beta01 sürümü şu commit'leri içerir.
Hata Düzeltmeleri
ListIteratoriçindeObjectListdeğerlerinin yanlış ayarlanması nedeniyleIndexOutOfBoundsExceptionkaynaklı kilitlenmeye yol açabilen sorun düzeltildi. (I3bd8a, b/307049391)
Sürüm 1.4.0-alpha02
18 Ekim 2023
androidx.collection:collection-*:1.4.0-alpha02 iptal edilir. 1.4.0-alpha02 sürümü şu commit'leri içerir.
API Değişiklikleri
putiçin, değiştirildiğinde önceki değeri döndüren aşırı yükleme,FloatFloatMapgibi tüm temel koleksiyonlara eklendi.MutableFloatFloatMapgibi temel koleksiyonlardakiremoveIfyöntemlerini satır içi olarak dönüştürün. Bu,removeIfiçin lambda'nın ayrılmamasını sağlar.
Sürüm 1.4.0-alpha01
4 Ekim 2023
androidx.collection:collection-*:1.4.0-alpha01 iptal edilir. 1.4.0-alpha01 sürümü şu commit'leri içerir.
Yeni Özellikler
Düşük ayırma ek yüküne ve yüksek performansa sahip yeni yüksek verimli koleksiyonlar eklendi:
MutableScatterMapveScatterMap-MutableMapve harita benzeri API'ye sahip sınıflarMutableScatterSet&ScatterSet-MutableSetve Set benzeri API'ye sahip sınıflarMutableObjectListveObjectList-MutableListve liste benzeri API'ye sahip sınıflar
Temel öğeleri kutulamadan depolamak için yeni ve yüksek verimli koleksiyonlar eklendi:
Mutable[Int|Float|Long]List-MutableList<Int|Float|Long>benzeri API'ye sahip sınıflar. Salt okunur[Int|Float|Long]Listda mevcuttur. Örneğin, tam sayılarIntListiçinde tutulabilir.Mutable[Int|Float|Long]Set-MutableSet<Int|Float|Long>benzeri API'ye sahip sınıflar. Salt okunur[Int|Float|Long]Setda mevcuttur. Örneğin, tam sayılar IntSet'te tutulabilir.