컬렉션
| 최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
|---|---|---|---|---|
| 2025년 8월 27일 | 1.5.0 | - | - | 1.6.0-alpha01 |
종속 항목 선언
Collection의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용을 알아보려면 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { def collection_version = "1.5.0" implementation "androidx.collection:collection:$collection_version" }
Kotlin
dependencies { val collection_version = "1.5.0" implementation("androidx.collection:collection:$collection_version") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.6
버전 1.6.0-alpha01
2025년 8월 27일
androidx.collection:collection-*:1.6.0-alpha01이 출시되었습니다. 버전 1.6.0-alpha01에는 이 커밋이 포함되어 있습니다.
API 변경사항
- Kotlin 2.0으로 출시된 프로젝트를 사용하려면 KGP 2.0.0 이상이 필요합니다 (Idb6b5).
버그 수정
- 이전에는 할당된 범위 내에 있지만 삽입된 범위
0..size -1외부에 있는 색인이 전달되면SparseArrayCompat가 valueAt에null를 반환하고keyAt를 반환했습니다. 문서화된 대로 이 동작은 예상되지 않았으며 유효한 입력 범위를 벗어납니다. 이 변경사항은 잘못된 색인이 전달될 때IndexOutOfBounds를 대신 발생시키도록 이 동작을 수정합니다. (I68453)
외부 기여
다음과 같은 기여를 해 주신 Jake Wharton에게 감사드립니다.
- 포함된 요소를 제한할 때 잘림 표시기 앞과 뒤에 구분자를 추가하여
joinToString동작을 플랫폼 컬렉션과 정렬합니다. (I1b7e8) ScatterSet.hashCode는 더 이상 재귀 (즉, 세트가 자체에 추가됨)에 대해 방어하지 않습니다. 이렇게 하면 동작이ScatterMap,HashSet, 기본 분산 기반 세트 (예:LongSet)을 사용합니다.equals메서드는 이미 재귀에 취약하며toString는 이를 방지합니다. 두 동작 모두 다른 컬렉션과 일치합니다. (I9c84a)- 이제 람다 인스턴스를 만들지 않도록
ScatterSet.retainAll함수가 인라인됩니다. (Ifa4b7) ScatterSet.hashCode는 더 이상 해시 계산에서 용량을 사용하지 않으므로 콘텐츠는 동일하지만 용량이 다른 경우에도 동일한 값이 생성됩니다. (Ic863b)- 이제
ScatterMap.asMap()또는ScatterSet.asSet()의keys,values또는entries컬렉션의 반복자에서next()전에remove()를 호출하면IllegalStateException가 발생합니다. 이렇게 하면 동작이 일반적인 맵 및 세트 동작과 일치합니다. (I71694)
버전 1.5
버전 1.5.0
2025년 3월 12일
androidx.collection:collection-*:1.5.0이 출시되었습니다. 버전 1.5.0에는 이러한 커밋이 포함되어 있습니다.
버전 1.5.0-rc01
2025년 2월 26일
androidx.collection:collection-*:1.5.0-rc01이 출시되었습니다. 버전 1.5.0-rc01에는 이 커밋이 포함되어 있습니다.
버전 1.5.0-beta03
2025년 1월 29일
androidx.collection:collection-*:1.5.0-beta03이 출시되었습니다. 버전 1.5.0-beta03에는 이러한 커밋이 포함되어 있습니다.
버전 1.5.0-beta02
2025년 1월 15일
androidx.collection:collection-*:1.5.0-beta02이 출시되었습니다. 버전 1.5.0-beta02에는 이 커밋이 포함되어 있습니다.
버전 1.5.0-beta01
2024년 12월 11일
androidx.collection:collection-*:1.5.0-beta01이 출시되었습니다. 버전 1.5.0-beta01에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
watchosDeviceArm64KMP 타겟 지원 및 타겟 kotlin 1.9 추가 (Icf15d, b/364652024)
버전 1.5.0-alpha06
2024년 11월 13일
androidx.collection:collection-*:1.5.0-alpha06이 출시되었습니다. 버전 1.5.0-alpha06에는 이러한 커밋이 포함되어 있습니다.
버그 수정
- 반복되는 키 충돌을 일으키는 항목을 여러 개 추가할 때
SieveCache및OrderedScatterSet에서 발생할 수 있는 비정상 종료 문제가 수정되었습니다. (Iaaf3d, b/375607736) - 컬렉션 라이브러리에 wasm 타겟 추가 (I66fe3, b/352722444)
버전 1.5.0-alpha05
2024년 10월 30일
androidx.collection:collection-*:1.5.0-alpha05이 출시되었습니다. 버전 1.5.0-alpha05에는 이 커밋이 포함되어 있습니다.
버전 1.5.0-alpha04
2024년 10월 16일
androidx.collection:collection-*:1.5.0-alpha04이 출시되었습니다. 버전 1.5.0-alpha04에는 이러한 커밋이 포함되어 있습니다.
버전 1.5.0-alpha03
2024년 10월 2일
androidx.collection:collection-*:1.5.0-alpha03이 출시되었습니다. 버전 1.5.0-alpha03에는 이 커밋이 포함되어 있습니다.
API 변경사항
- Kotlin 버전이 1.9로 업데이트됨 (I1a14c)
외부 기여
contains을containsKey로 전달합니다. 제이크 와튼님, 감사합니다. (I9362b)- 스칼라 특화 컬렉션의 컨테이너 빌더 추가 제이크 와튼님, 감사합니다. (I13179)
버전 1.5.0-alpha02
2024년 9월 18일
androidx.collection:collection-*:1.5.0-alpha02이 출시되었습니다. 버전 1.5.0-alpha02에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
watchosDeviceArm64플랫폼 타겟 지원 추가 (I1cc04, b/364652024)
버전 1.5.0-alpha01
2024년 9월 4일
androidx.collection:collection-*:1.5.0-alpha01이 출시되었습니다. 버전 1.5.0-alpha01에는 이 커밋이 포함되어 있습니다.
API 변경사항
OrderedScatterSet은 순서가 지정되고 할당이 없는 새로운 컬렉션입니다 (Ic4178).SieveCache는 더 나은 적중률 특성을 제공하는LruCache의 새로운 할당 없는 대체 항목입니다. (I50a17)IntIntPair및FloatFloatPair의packedValue내부 표현식을 노출했습니다. (Ifeb75, b/331853566)- 목록 컬렉션에서 콘텐츠 배열에 대한 액세스 권한 추가 (I899d5, b/333903173)
- Double 값에 최적화된 목록과 유사한 데이터 구조인
DoubleList추가 (Ia10d1, b/315127635)
버그 수정
버전 1.4
버전 1.4.5
2024년 10월 30일
androidx.collection:collection-*:1.4.5이 출시되었습니다. 버전 1.4.5에는 이러한 커밋이 포함되어 있습니다.
버전 1.4.4
2024년 9월 18일
androidx.collection:collection-*:1.4.4이 출시되었습니다. 버전 1.4.4에는 이러한 커밋이 포함되어 있습니다.
버그 수정
- 빈 컬렉션을 정렬할 때
ArrayIndexOutOfBounds해결 방법 (I65245)
버전 1.4.3
2024년 8월 7일
androidx.collection:collection-*:1.4.3이 출시되었습니다. 버전 1.4.3에는 이 커밋이 포함되어 있습니다.
버그 수정
ScatterMap,ScatterSet및 기본 변형에서 발생할 수 있는 손상 문제가 수정되었습니다. (I38a4a, b/352560465)- 성능 최적화 특히 다음을 확인합니다.
check()및required()에 대한 호출을 예외 발생을 인라인하지 않는 변형으로 바꿉니다. 이렇게 하면 최종 바이너리 크기가 줄어들고 무엇보다 i-cache 압력이 약간 완화됩니다.- 'scatter' 컬렉션 패밀리에서
removeDeletedMarkers()가 개선되었습니다. 새 버전은 삭제된 마커를 한 번에 8개씩 지우고 이 과정에서 더 비용이 많이 드는 쓰기를 건너뜁니다. (Ic0566)
버전 1.4.2
2024년 7월 24일
androidx.collection:collection-*:1.4.2이 출시되었습니다. 버전 1.4.2에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
watchos,tvos,linuxArm64등 추가 Kotlin 멀티플랫폼 타겟이 포함됩니다. (b/352543988)
버전 1.4.1
2024년 7월 10일
androidx.collection:collection-*:1.4.1이 출시되었습니다. 버전 1.4.1에는 이 커밋이 포함되어 있습니다.
버그 수정
- 크기 조절 시 삭제된 툼스톤을 Map/Set에서 삭제 (7a996c5, b/345960092)
버전 1.4.0
2024년 1월 24일
androidx.collection:collection-*:1.4.0이 출시되었습니다. 버전 1.4.0에 포함된 커밋을 확인하세요.
1.3.0 이후 중요 변경사항
박싱 없이 기본 요소를 저장하기 위한 새로운 고효율 컬렉션이 추가되었습니다.
MutableScatterMap및ScatterMap-MutableMap및 지도와 유사한 API가 있는 클래스MutableScatterSet및ScatterSet-MutableSet및 Set과 유사한 API가 있는 클래스MutableObjectList및ObjectList-MutableList및 목록과 유사한 API가 있는 클래스
예를 들어 정수 키와 참조 유형 값이 있는 맵은 IntObjectMap<T>입니다. 긴 키와 부동 소수점 값이 있는 맵은 LongFloatMap입니다. ObjectObjectMap은 ScatterMap/MutableScatterMap에 포함되므로 ObjectObjectMap이라는 버전은 없습니다.
버전 1.4.0-rc01
2024년 1월 10일
androidx.collection:collection-*:1.4.0-rc01은 변경사항 없이 출시되었습니다. 버전 1.4.0-rc01에 포함된 커밋을 확인하세요.
버전 1.4.0-beta02
2023년 11월 29일
androidx.collection:collection-*:1.4.0-beta02이 출시되었습니다. 버전 1.4.0-beta02에 포함된 커밋을 확인하세요.
새로운 기능
FloatFloatPair의 성능을 개선했습니다. (If5537)
버그 수정
- 이제
ScatterMap.asMap()반복자가 새 인스턴스를 반환합니다. (I28932, b/310365754)
버전 1.4.0-beta01
2023년 11월 15일
androidx.collection:collection-*:1.4.0-beta01이 출시되었습니다. 버전 1.4.0-beta01에 포함된 커밋을 확인하세요.
버그 수정
IndexOutOfBoundsException로 인해 비정상 종료될 수 있는ObjectList에서 값을 잘못 설정하는ListIterator수정 (I3bd8a, b/307049391)
버전 1.4.0-alpha02
2023년 10월 18일
androidx.collection:collection-*:1.4.0-alpha02이 출시되었습니다. 버전 1.4.0-alpha02에 포함된 커밋을 확인하세요.
API 변경사항
FloatFloatMap과 같은 모든 기본 컬렉션으로 대체될 때 이전 값을 반환하는put오버로드가 추가되었습니다.MutableFloatFloatMap과 같은 기본 컬렉션의removeIf메서드를 인라인으로 변환합니다. 이렇게 하면removeIf의 람다가 할당되지 않습니다.
버전 1.4.0-alpha01
2023년 10월 4일
androidx.collection:collection-*:1.4.0-alpha01이 출시되었습니다. 버전 1.4.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
할당 오버헤드가 낮고 성능이 높은 새로운 고효율 컬렉션이 추가되었습니다.
MutableScatterMap및ScatterMap-MutableMap및 지도와 유사한 API가 있는 클래스MutableScatterSet및ScatterSet-MutableSet및 Set과 유사한 API가 있는 클래스MutableObjectList및ObjectList-MutableList및 목록과 유사한 API가 있는 클래스
박싱 없이 기본 요소를 저장하기 위한 새로운 고효율 컬렉션이 추가되었습니다.
Mutable[Int|Float|Long]List-MutableList<Int|Float|Long>와 유사한 API가 있는 클래스입니다. 읽기 전용[Int|Float|Long]List도 있습니다. 예를 들어 정수는IntList에 저장할 수 있습니다.Mutable[Int|Float|Long]Set-MutableSet<Int|Float|Long>와 유사한 API가 있는 클래스입니다. 읽기 전용[Int|Float|Long]Set도 있습니다. 예를 들어 정수는 IntSet에 저장할 수 있습니다.Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map-Mutable<Int|Float|Long,T, Int|Float|Long|T>와 유사한 API가 있는 클래스입니다. 읽기 전용[Int|Float|Long|Object][Int|Float|Long|Object]Map도 있습니다. 예를 들어 정수 키와 참조 유형 값이 있는 맵은IntObjectMap<T>입니다. 긴 키와 부동 소수점 값이 있는 맵은LongFloatMap입니다.ObjectObjectMap은ScatterMap/MutableScatterMap에 포함되므로ObjectObjectMap이라는 버전은 없습니다.
버전 1.3.0
버전 1.3.0
2023년 10월 4일
androidx.collection:collection-*:1.3.0이 출시되었습니다. 버전 1.3.0에 포함된 커밋을 확인하세요.
1.2.0 이후 중요 변경사항
- 이제 Kotlin 멀티플랫폼 프로젝트에서 컬렉션을 사용할 수 있습니다. 컬렉션의 Android가 아닌 타겟은 아직 실험 단계이지만 개발자가 더 쉽게 사용해 볼 수 있도록 버전을 병합하기로 했습니다.
- 모든 소스가 Kotlin으로 이전되었습니다. 이 변경의 일환으로 이제 많은 API가 nullity에 대해 올바르게 입력되었으며 일부 패키지 비공개 구성원이
internal가 되었습니다. 정확한 변경사항 목록은 아래의 1.3.x 부 버전 출시 노트에서 확인할 수 있습니다. - Kotlin 이전과 함께
collection-ktx가 기본 컬렉션 아티팩트와 병합되었습니다. 이제collection-ktx가 비어 있으므로collection:collection을 대신 사용하여collection:collection-ktx의 종속 항목을 안전하게 삭제할 수 있습니다.
버전 1.3.0-rc01
2023년 9월 6일
androidx.collection:collection-*:1.3.0-rc01은 변경사항 없이 출시되었습니다. 버전 1.3.0-rc01에 포함된 커밋을 확인하세요.
버전 1.3.0-beta01
2023년 8월 9일
androidx.collection:collection-*:1.3.0-beta01이 출시되었습니다. 버전 1.3.0-beta01에 포함된 커밋을 확인하세요.
버전 1.3.0-alpha04
2023년 3월 24일
androidx.collection:collection-*:1.3.0-alpha04이 출시되었습니다.
버그 수정
- Kotlin 네이티브 타겟의 빌드 문제를 해결하기 위해 Maven 아티팩트에서 종속 항목 제약 조건을 삭제했습니다 (b/274786186, KT-57531).
버전 1.3.0-alpha03
2023년 3월 22일
androidx.collection:collection-*:1.3.0-alpha03이 출시되었습니다. 버전 1.3.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
- 이제 KMM 프로젝트에서 컬렉션을 사용할 수 있습니다. 컬렉션의 Android 이외 타겟은 아직 실험 단계이지만 개발자가 더 쉽게 사용해 볼 수 있도록 버전을 병합하기로 했습니다.
API 변경사항
- 이제
ArraySet은AbstractMutableCollection대신MutableCollections을 구현하여toArray의 메모리 효율적인 구현을 허용합니다 (I1ac32).
버그 수정
ArraySet.toArray는 항상 Java와의 호환성을 위해서만 포함되었으므로 이제 JVM에서만 사용할 수 있습니다. Kotlin 사용자는 일반적으로 stdlib의.toTypedArray도우미를 대신 사용해야 합니다. 이 도우미는 추가된 유형 안전성과 함께 정확히 동일한 기능을 제공합니다. (I2c59b)
버전 1.3.0-alpha02
2022년 7월 27일
androidx.collection:collection:1.3.0-alpha02 및 androidx.collection:collection-ktx:1.3.0-alpha02가 출시되었습니다. 버전 1.3.0-alpha02에 포함된 커밋을 확인하세요.
API 변경사항
- 이제 일반 아티팩트의 jvm 외의 플랫폼에서
SparseArrayCompat를 사용할 수 있습니다(Ic9bd0, b/219589118, b/228347315). - 이제 일반 아티팩트의 jvm 외의 플랫폼에서
CircularIntArray를 사용할 수 있습니다(I3d8ef, b/228344943). - 이제 일반 아티팩트의 jvm 외의 플랫폼에서
LongSparseArray를 사용할 수 있습니다(I73149, b/228347315).
버전 1.3.0-alpha01
2022년 6월 29일
androidx.collection:collection:1.3.0-alpha01 및 androidx.collection:collection-ktx:1.3.0-alpha01이 출시되었습니다. 버전 1.3.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
collection-ktx확장 프로그램을 기본 컬렉션 아티팩트androidx.collection:collection으로 이전했습니다. 이 변경사항으로 인해 기존 사용자의 호환성을 계속 유지하면서 -ktx 종속 항목 없이도 Kotlin 사용자가 기존 -ktx 확장 프로그램에 액세스할 수 있습니다. 이러한 확장 프로그램을 별도의 -ktx 아티팩트로 유지하는 것은 더 이상 유용하지 않습니다. 주요 아티팩트가 Kotlin으로 이동했기 때문입니다(I6eef2).
API 변경사항
- 이제
ArraySet가AbstractMutableCollection을 확장하며 더 이상 Collection 인터페이스를 직접 구현하지 않습니다(If6da0, b/230860589). ArraySet를 Kotlin으로 변환했습니다. 더 엄격한 입력으로 인해 일부 Kotlin 호출이 더 이상 컴파일되지 않을 수 있습니다(Id68c1, b/230860589).- 다음 호출은 인수 유형이
T?가 아닌T입니다.ArraySet<T>.contains(null)ArraySet<T>.add(null)ArraySet<T>.remove(null)
- 다음 호출은 반환 유형이
T!가 아닌T?입니다.ArraySet<T?>.valueAt(n)ArraySet<T?>.removeAt(n)ArraySet<T?>().iterator().next()
- 다음 호출은 Kotlin에서 더 이상 실행할 수 없습니다.
set.toArray()-set.toTypedArray()를 사용합니다.set.toArray(array)-set.forEachIndexed(array::set)를 사용합니다.
- 다음 호출은 인수 유형이
SparseArrayCompat의 오버로드된 생성자를 Kotlin 사용자의 선택적 인수로 결합합니다(If8407, b/227474719).SparseArrayCompat.get(key, defaultValue).의 연산자 문법을 삭제합니다. 이는 여전히.get(key)의 연산자 문법을 허용하지만SparseArrayCompat의 API 노출 영역을 이 라이브러리의 다른 클래스와 더 정확히 정렬합니다(I9a38d).LongSparseArray확장 프로그램을 기본 아티팩트 androidx.collection:collection으로 이전합니다. 이 변경사항으로 인해 기존 사용자의 호환성을 계속 유지하면서 -ktx 종속 항목 없이도 Kotlin 사용자가 기존 -ktx 확장 프로그램에 액세스할 수 있습니다. 이러한 확장 프로그램을 별도의 -ktx 아티팩트로 유지하는 것은 더 이상 유용하지 않습니다. 주요 아티팩트가 Kotlin으로 이동했기 때문입니다(I8659a).LongSparseArray를 Kotlin으로 변환합니다. 이 변경사항으로 인해 유형에 명시적 nullity가 추가되며 이는 바이너리 호환 변경이지만 소스 비호환성을 유발할 수 있습니다. 특히 *.isEmpty는 더 이상 속성으로 액세스할 수 없으며 Kotlin의 함수 호출.isEmpty()로 액세스해야 합니다(Idfd0f).SimpleArrayMap을 Kotlin으로 변환합니다. 이 변경사항으로 인해 몇 가지 호환되지 않는 변경사항이 발생합니다. 자바-Kotlin 상호 운용성과 소스에서 유형의 nullity를 올바르게 정의하는 기능 때문입니다.- 패키지 비공개 API
.mSize,.mArray,.mHashes,.indexOf(),.indexOfNull(),.indexOfValue()를 비공개로 설정했습니다. 이는 기술적으로 바이너리 비호환 변경이지만 이러한 필드의 의도된 가시성을 반영하며 Kotlin에서 달성할 수 있는 가장 가까운 부분입니다. 패키지 비공개 가시성을 지정하는 방법이 포함되어 있지 않기 때문입니다. - 이제 일부 유형의 nullity가 올바르게 정의되었습니다. 영향을 받는 메서드는 다음과 같습니다.
.getOrDefault,.keyAt,.valueAt,.setValueAt,.put,.putIfAbsent,.removeAt,.replace - Kotlin 사용자의 경우 이제
.isEmpty()는 속성 액세스를 통해서가 아니라 함수로만 사용할 수 있습니다(I271b7, b/182813986).
- 패키지 비공개 API
CircularArray를 Kotlin으로 변환합니다. 주요 변경사항은 다음과 같습니다.- 제네릭의 nullity가 null이 아닌 것이 되도록 수정합니다. 이는 이전에는 선언할 수 없었지만 모든 공개 API에서 시행되었습니다.
- Kotlin의 자바 상호 운용성으로 인해 이전에는 속성이나 함수로 특정 메서드에 액세스할 수 있었습니다. 그러나 바이너리 호환성을 유지하면서 중복을 줄이기 위해 소스와 호환되지 않는 변경사항을 삭제해야 했습니다. 영향을 받는 호출은
.isEmpty,.getLast(),.getFirst()입니다. (Ifffac)
CircularIntArray를 Kotlin으로 변환합니다. Kotlin의 자바 상호 운용성으로 인해 이전에는 속성이나 함수로 특정 메서드에 액세스할 수 있었습니다. 그러나 바이너리 호환성을 유지하면서 중복을 줄이기 위해 소스와 호환되지 않는 변경사항을 삭제해야 했습니다. 영향을 받는 호출은.isEmpty,.getLast(),.getFirst()입니다. (Ie36ce)LruCache를 Kotlin으로 변환합니다. (Ia2f19)SparseArrayCompat를 Kotlin으로 변환합니다(If6fe8).작은 동작 변경사항이
SparseArrayCompat.valueAt()에 추가되어size()경계 밖에서 그러나 제공된 초기 용량 내에서 초기화되지 않은 호출에 관해 더 이상 잘못null을 반환하지 않습니다이 변경으로 인해, 이전에 누락되었던 일부 유형의 올바른 nullity도 도입되었습니다.
.get(): E?->.get(): E.replace(Int, Int?): Int?->.replace(Int, Int): Int?.replace(Int, Int?, Int?): Boolean->.replace(Int, Int, Int): Boolean.put(Int, Int?)->.put(Int, Int).putIfAbsent(Int, Int?): Int?->.putIfAbsent(Int, Int): Int?.setValueAt(index: Int, value: Int?)->.setValueAt(index: Int, value: Int).indexOfValue(value: Int?): Int->.indexOfValue(value: Int): Int.containsValue(value: Int?): Boolean->.containsValue(value: Int): Boolean.append(key: Int, value: Int?)->.append(key: Int, value: Int)
버전 1.2.0
버전 1.2.0
2021년 12월 1일
androidx.collection:collection:1.2.0 및 androidx.collection:collection-ktx:1.2.0이 출시되었습니다. 버전 1.2.0에 포함된 커밋을 확인하세요.
1.1.0 이후 중요 변경사항
- 배열 생성자를
ArraySet에 추가했습니다. (Id7f19) entrySet().toArray(),remove(),removeAll(),retainAll()을 구현하고entrySet().addAll()구현을 삭제하여entrySet()API를 준수하도록 합니다. (I5d505)
버전 1.2.0-rc01
2021년 11월 17일
androidx.collection:collection:1.2.0-rc01 및 androidx.collection:collection-ktx:1.2.0-rc01이 출시되었습니다. 버전 1.2.0-rc01에 포함된 커밋을 확인하세요.
API 변경사항
- 이전 베타에서 변경된 사항 없음
버전 1.2.0-beta01
2021년 10월 13일
androidx.collection:collection:1.2.0-beta01 및 androidx.collection:collection-ktx:1.2.0-beta01이 출시되었습니다. 버전 1.2.0-beta01에 포함된 커밋을 확인하세요.
버그 수정
entrySet().toArray(),remove(),removeAll(),retainAll()을 구현하고entrySet().addAll()구현을 삭제하여entrySet()API를 준수하도록 합니다. (I5d505)
버전 1.2.0-alpha01
2020년 12월 16일
androidx.collection:collection:1.2.0-alpha01 및 androidx.collection:collection-ktx:1.2.0-alpha01이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.
API 변경사항
- 배열 생성자를
ArraySet에 추가했습니다. (Id7f19)
버전 1.1.0
버전 1.1.0
2019년 6월 5일
androidx.collection:collection:1.1.0 및 androidx.collection:collection-ktx:1.1.0이 출시되었습니다. 1.1.0에 포함된 커밋은 여기에서 확인할 수 있습니다.
다음은 1.0.0에서 1.1.0으로 변경된 사항을 요약한 내용입니다.
새로운 기능
- 'collection-ktx' 아티팩트의
contains및isNotEmpty함수에서 더 효율적인 구현을 사용합니다. (aosp/866529)
API 변경사항
LongSparseArray,SimpleArrayMap,SparseArrayCompat에putIfAbsent를 추가합니다. (aosp/772608)SimpleArrayMap에getOrDefault를 추가합니다. (aosp/772607)LongSparseArray,SimpleArrayMap,SparseArrayCompat에 2인수remove를 추가합니다. 이 기능에 상응하는 KTX 확장 프로그램을 지원 중단합니다. (aosp/772482)LongSparseArray,SimpleArrayMap,SparseArrayCompat에 2인수replace를 추가합니다. (aosp/772483)LongSparseArray,SimpleArrayMap,SparseArrayCompat에 3인수replace를 추가합니다. (aosp/772484)- 중복되는
delete메서드를 지원 중단합니다.remove메서드는 동일한 API 및 기능을 제공하며 특수화되지 않은 지도에서 사용되는 API와 일치합니다. (aosp/866053)
버그 수정
ArrayMap.class대신SimpleArrayMap.class에서 내부 글로벌 어레이 캐시를 동기화하도록SimpleArrayMap을 변경했습니다. 따라서SimpleArrayMap만 사용 중인 경우 코드 축소 도구를 사용하여ArrayMap을 삭제할 수 있습니다. (aosp/934557)
버전 1.1.0-rc01
2019년 5월 7일
androidx.collection:collection:1.1.0-rc01 및 androidx.collection:collection-ktx:1.1.0-rc01이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
새로운 기능
- 'collection-ktx' 아티팩트의
contains및isNotEmpty함수에서 더 효율적인 구현을 사용합니다. (aosp/866529)
버전 1.1.0-beta01
2019년 4월 3일
androidx.collection:collection:1.1.0-beta01 및 androidx.collection:collection-ktx:1.1.0-beta01이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
API 변경사항
- alpha03 출시 노트에
@RestrictTo값이 변경된 것으로 설명된 메서드가 삭제되었습니다. 이 메서드는 AndroidX 라이브러리에서 사용되지 않았으며(현재 또는 이전), 공개 API에서 누락된 기능을 제공하지 않았습니다.
버그 수정
ArrayMap.class대신SimpleArrayMap.class에서 내부 글로벌 어레이 캐시를 동기화하도록SimpleArrayMap을 변경했습니다. 따라서SimpleArrayMap만 사용 중인 경우 코드 축소 도구를 사용하여ArrayMap을 삭제할 수 있습니다. (aosp/934557)
버전 1.1.0-alpha03
2019년 3월 13일
androidx.collection:collection:1.0.0-alpha03 및 androidx.collection:collection-ktx:1.0.0-alpha03이 출시되었습니다.
이 버전에 포함된 커밋의 전체 목록은 여기에서 확인할 수 있습니다.
API 변경사항
- 이전에
@RestrictTo(LIBRARY_GROUP)로 표시되던ArraySet의 메서드가@RestrictTo(LIBRARY_GROUP_PREFIX)로 변경되었습니다. 이는 이제 다른 Maven 그룹 ID에 있는 다른 AndroidX 라이브러리의 방문 기록 사용을 지원하기 위한 것입니다. 다른 AndroidX 라이브러리에서 다른 개발자가 가져오지 않는 특수 API를 가져오면 안 되므로 이 메서드는 1.1.0-alpha04에서 공개되거나 삭제됩니다.
버전 1.1.0-alpha02
2019년 1월 30일
androidx.collection:collection 1.1.0-alpha02 및 androidx.collection:collection-ktx 1.1.0-alpha02가 출시되었습니다.
API 변경사항
- 중복되는
delete메서드를 지원 중단합니다.remove메서드는 동일한 API 및 기능을 제공하며 특수화되지 않은 지도에서 사용되는 API와 일치합니다. (aosp/866053)
버전 1.1.0-alpha01
2018년 12월 3일
API 변경사항
LongSparseArray,SimpleArrayMap,SparseArrayCompat에putIfAbsent를 추가합니다. (aosp/772608)SimpleArrayMap에getOrDefault를 추가합니다. (aosp/772607)LongSparseArray,SimpleArrayMap,SparseArrayCompat에 2인수remove를 추가합니다. 이 기능에 상응하는 KTX 확장 프로그램을 지원 중단합니다. (aosp/772482)LongSparseArray,SimpleArrayMap,SparseArrayCompat에 2인수replace를 추가합니다. (aosp/772483)LongSparseArray,SimpleArrayMap,SparseArrayCompat에 3인수replace를 추가합니다. (aosp/772484)