Share via


LongSparseArray 클래스

정의

SparseArray는 개체에 긴 매핑을 사용합니다.

[Android.Runtime.Register("android/util/LongSparseArray", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public class LongSparseArray : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.ICloneable
[<Android.Runtime.Register("android/util/LongSparseArray", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type LongSparseArray = class
    inherit Object
    interface ICloneable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
상속
LongSparseArray
특성
구현

설명

SparseArray는 개체에 긴 매핑을 사용합니다. 일반 개체 배열과 달리 인덱스에 간격이 있을 수 있습니다. 자동 boxing 키를 피하고 데이터 구조가 각 매핑에 대해 추가 항목 개체를 사용하지 않기 때문에 HashMap을 사용하여 Longs를 개체에 매핑하는 것보다 메모리 효율이 더 효율적입니다.

이 컨테이너는 이진 검색을 사용하여 키를 찾는 배열 데이터 구조에 매핑을 유지합니다. 구현은 많은 수의 항목을 포함할 수 있는 데이터 구조에 적합하지 않습니다. 조회에는 이진 검색이 필요하고 를 추가하고 제거하려면 배열에 항목을 삽입하고 삭제해야 하므로 일반적으로 기존 HashMap보다 느립니다. 최대 수백 개의 항목을 보유하는 컨테이너의 경우 성능 차이는 중요하지 않으며 50% 미만입니다.

성능을 돕기 위해 컨테이너에는 키를 제거할 때 최적화가 포함됩니다. 즉, 배열을 즉시 압축하는 대신 제거된 항목이 삭제된 것으로 표시됩니다. 그런 다음 동일한 키에 대해 항목을 다시 사용하거나 나중에 제거된 모든 항목의 단일 가비지 수집 단계에서 압축할 수 있습니다. 이 가비지 수집은 배열을 확장해야 하거나 맵 크기 또는 항목 값을 검색할 때마다 수행해야 합니다.

#valueAt(int)를 사용하여 #keyAt(int) 이 컨테이너의 항목을 반복할 수 있습니다. 인덱스의 오름차순 값을 사용하여 keyAt(int) 키를 반복하면 키가 오름차순으로 반환되거나 의 경우 valueAt(int)키에 해당하는 값이 오름차순으로 반환됩니다.

에 대한 Java 설명서입니다 android.util.LongSparseArray.

이 페이지의 일부는 만들고 공유하며 에 설명된 용어에 따라 사용되는 작업을 기반으로 수정됩니다.

생성자

LongSparseArray()

매핑이 없는 새 LongSparseArray를 만듭니다.

LongSparseArray(Int32)

지정된 수의 매핑을 저장하는 데 추가 메모리 할당이 필요하지 않은 매핑이 없는 새 LongSparseArray를 만듭니다.

LongSparseArray(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

속성

Class

Object의 런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android instance 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
JniPeerMembers

SparseArray는 개체에 긴 매핑을 사용합니다.

PeerReference

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

Append(Int64, Object)

배열에 키/값 쌍을 배치하여 키가 배열의 모든 기존 키보다 큰 경우를 최적화합니다.

Clear()

이 LongSparseArray에서 모든 키-값 매핑을 제거합니다.

Clone()

Object의 복사본을 만들고 반환합니다.

Delete(Int64)

지정된 키에서 매핑을 제거합니다(있는 경우).

Dispose()

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
Get(Int64)

지정된 키에서 매핑된 개체를 가져오거나 null 이러한 매핑이 수행되지 않은 경우 가져옵니다.

Get(Int64, Object)

지정된 키에서 매핑된 개체를 가져오거나, 이러한 매핑이 수행되지 않은 경우 지정된 Object를 가져옵니다.

GetHashCode()

개체의 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
IndexOfKey(Int64)

지정된 키를 반환할 #keyAt 인덱스 또는 지정된 키가 매핑되지 않은 경우 음수를 반환합니다.

IndexOfValue(Object)

지정된 키를 반환할 #valueAt 인덱스 또는 지정된 값에 매핑되는 키가 없는 경우 음수를 반환합니다.

JavaFinalize()

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
KeyAt(Int32)

범위 0...size()-1의 인덱스가 지정되면 이 LongSparseArray가 저장하는 키-값 매핑의 index키를 반환합니다.

Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
Put(Int64, Object)

지정된 키의 매핑을 지정된 값에 추가하여 지정된 키의 이전 매핑(있는 경우)을 바꿉니다.

Remove(Int64)

의 별칭입니다 #delete(long).

RemoveAt(Int32)

지정된 인덱스의 매핑을 제거합니다.

SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
SetValueAt(Int32, Object)

범위 0...size()-1의 인덱스가 지정된 경우 이 LongSparseArray가 저장하는 키-값 매핑에 대한 index새 값을 설정합니다.

Size()

이 LongSparseArray가 현재 저장하는 키-값 매핑 수를 반환합니다.

ToArray<T>()

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
UnregisterFromRuntime()

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
ValueAt(Int32)

범위 0...size()-1의 인덱스가 지정되면 이 LongSparseArray에서 저장하는 키-값 매핑의 index값을 반환합니다.

Wait()

현재 스레드가 각성될 때까지 대기하도록 합니다. 일반적으로 <알림을<> 받>거나<<> 중단/em>합니다.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 깨어날 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 중단</>em>>을 받거나 <일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 깨어날 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 중단</>em>>을 받거나 <일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

IJavaPeerable.Disposed()

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
IJavaPeerable.DisposeUnlessReferenced()

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
IJavaPeerable.Finalized()

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
IJavaPeerable.JniManagedPeerState

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

SparseArray는 개체에 긴 매핑을 사용합니다.

(다음에서 상속됨 Object)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

SparseArray는 개체에 긴 매핑을 사용합니다.

GetJniTypeName(IJavaPeerable)

SparseArray는 개체에 긴 매핑을 사용합니다.

적용 대상