컬렉션
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2024년 12월 11일 | 1.4.5 | - | 1.5.0-beta01 | - |
종속 항목 선언
Collection의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용을 알아보려면 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { def collection_version = "1.4.5" implementation "androidx.collection:collection:$collection_version" }
Kotlin
dependencies { val collection_version = "1.4.5" implementation("androidx.collection:collection:$collection_version") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.5
버전 1.5.0-beta01
2024년 12월 11일
androidx.collection:collection-*:1.5.0-beta01
이 출시되었습니다. 버전 1.5.0-beta01에는 이 커밋이 포함되어 있습니다.
API 변경사항
watchosDeviceArm64
KMP 타겟 및 타겟 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에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 추가 Kotlin 멀티플랫폼 타겟(
watchos
,tvos
,linuxArm64
)을 포함합니다. (b/352543988)
버전 1.4.1
2024년 7월 10일
androidx.collection:collection-*:1.4.1
이 출시되었습니다. 버전 1.4.1에는 이 커밋이 포함되어 있습니다.
버그 수정
- 크기를 조절할 때 지도/세트에서 삭제된 삭제 표시를 삭제합니다. (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
및 세트와 유사한 API가 있는 클래스MutableObjectList
및ObjectList
-MutableList
및 목록과 유사한 API가 있는 클래스
예를 들어 정수 키와 참조 유형 값이 있는 맵은 IntObjectMap<T>
입니다. 긴 키와 부동 소수점 값이 있는 맵은 LongFloatMap
입니다. ObjectObjectMap
이름의 버전은 없습니다. ScatterMap/MutableScatterMap
에 포함되어 있기 때문입니다.
버전 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에 포함된 커밋을 확인하세요.
버그 수정
ListIterator
가ObjectList
에서 값을 잘못 설정하여IndexOutOfBoundsException
로 인해 비정상 종료가 발생할 수 있는 문제를 수정했습니다. (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
및 세트와 유사한 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
에 포함되어 있기 때문입니다.
버전 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-ktx
의 종속 항목을collection:collection
로 안전하게 대체할 수 있습니다.
버전 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
에서toArray
를 더 메모리 효율적으로 구현할 수 있도록AbstractMutableCollection
대신MutableCollections
를 구현합니다. (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)