# SparseArrayKt

Added in 1.1.0

*** ** * ** ***


```
public final class SparseArrayKt
```

<br />

*** ** * ** ***

## Summary

| ### Public methods |
|---|---|
| `static final boolean` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).contains(kotlin.Int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, int key)` Returns true if the collection contains `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).contains(kotlin.Int)`. |
| `static final boolean` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).containsKey(kotlin.Int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, int key)` Returns true if the collection contains `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).containsKey(kotlin.Int)`. |
| `static final boolean` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).containsValue(kotlin.Any)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, @https://developer.android.com/reference/androidx/annotation/NonNull T value )` Returns true if the collection contains `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).containsValue(kotlin.Any)`. |
| `static final void` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).forEach(kotlin.Function2)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, @https://developer.android.com/reference/androidx/annotation/NonNull Function2<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Integer.html, @https://developer.android.com/reference/androidx/annotation/NonNull value, https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html> action )` Performs the given `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).forEach(kotlin.Function2)` for each key/value entry. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull T` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).getOrDefault(kotlin.Int,kotlin.Any)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, int key, @https://developer.android.com/reference/androidx/annotation/NonNull T defaultValue )` Return the value corresponding to `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrDefault(kotlin.Int,kotlin.Any)`, or `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrDefault(kotlin.Int,kotlin.Any)` when not present. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull T` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).getOrElse(kotlin.Int,kotlin.Function0)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, int key, @https://developer.android.com/reference/androidx/annotation/NonNull Function0<@https://developer.android.com/reference/androidx/annotation/NonNull T> defaultValue )` Return the value corresponding to `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrElse(kotlin.Int,kotlin.Function0)`, or from `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrElse(kotlin.Int,kotlin.Function0)` when not present. |
| `static final int` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).getSize()(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver)` Returns the number of key/value pairs in the collection. |
| `static final boolean` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).isEmpty()(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver)` Return true when the collection contains no elements. |
| `static final boolean` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).isNotEmpty()(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver)` Return true when the collection contains elements. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-int-iterator/index.html` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).keyIterator()(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver)` Return an iterator over the collection's keys. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T>` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).plus(android.util.SparseArray)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> other )` Creates a new collection by adding or replacing entries from `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).plus(android.util.SparseArray)`. |
| `static final void` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).putAll(android.util.SparseArray)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> other )` Update this collection by adding or replacing entries from `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).putAll(android.util.SparseArray)`. |
| `static final boolean` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).remove(kotlin.Int,kotlin.Any)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, int key, @https://developer.android.com/reference/androidx/annotation/NonNull T value )` Removes the entry for `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).remove(kotlin.Int,kotlin.Any)` only if it is mapped to `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).remove(kotlin.Int,kotlin.Any)`. |
| `static final void` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).set(kotlin.Int,kotlin.Any)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver, int key, @https://developer.android.com/reference/androidx/annotation/NonNull T value )` Allows the use of the index operator for storing values in the collection. |
| `static final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Iterator.html<@https://developer.android.com/reference/androidx/annotation/NonNull T>` | `<T extends https://developer.android.com/reference/java/lang/Object.html> https://developer.android.com/reference/androidx/core/util/SparseArrayKt#(android.util.SparseArray).valueIterator()(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull T> receiver)` Return an iterator over the collection's values. |

## Public methods

### contains

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:contains) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final boolean <T extends Object> contains(@NonNull SparseArray<@NonNull T> receiver, int key)
```

Returns true if the collection contains `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).contains(kotlin.Int)`.

### containsKey

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:containsKey) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final boolean <T extends Object> containsKey(@NonNull SparseArray<@NonNull T> receiver, int key)
```

Returns true if the collection contains `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).containsKey(kotlin.Int)`.

### containsValue

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:containsValue) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final boolean <T extends Object> containsValue(
    @NonNull SparseArray<@NonNull T> receiver,
    @NonNull T value
)
```

Returns true if the collection contains `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).containsValue(kotlin.Any)`.

### forEach

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:forEach) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final void <T extends Object> forEach(
    @NonNull SparseArray<@NonNull T> receiver,
    @NonNull Function2<@NonNull Integer, @NonNull value, Unit> action
)
```

Performs the given `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).forEach(kotlin.Function2)` for each key/value entry.

### getOrDefault

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:getOrDefault) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final @NonNull T <T extends Object> getOrDefault(
    @NonNull SparseArray<@NonNull T> receiver,
    int key,
    @NonNull T defaultValue
)
```

Return the value corresponding to `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrDefault(kotlin.Int,kotlin.Any)`, or `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrDefault(kotlin.Int,kotlin.Any)` when not present.

### getOrElse

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:getOrElse) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final @NonNull T <T extends Object> getOrElse(
    @NonNull SparseArray<@NonNull T> receiver,
    int key,
    @NonNull Function0<@NonNull T> defaultValue
)
```

Return the value corresponding to `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrElse(kotlin.Int,kotlin.Function0)`, or from `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).getOrElse(kotlin.Int,kotlin.Function0)` when not present.

### getSize

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+symbol:size) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final int <T extends Object> getSize(@NonNull SparseArray<@NonNull T> receiver)
```

Returns the number of key/value pairs in the collection.

### isEmpty

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:isEmpty) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final boolean <T extends Object> isEmpty(@NonNull SparseArray<@NonNull T> receiver)
```

Return true when the collection contains no elements.

### isNotEmpty

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:isNotEmpty) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final boolean <T extends Object> isNotEmpty(@NonNull SparseArray<@NonNull T> receiver)
```

Return true when the collection contains elements.

### keyIterator

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:keyIterator) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final @NonNull IntIterator <T extends Object> keyIterator(@NonNull SparseArray<@NonNull T> receiver)
```

Return an iterator over the collection's keys.

### plus

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:plus) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final @NonNull SparseArray<@NonNull T> <T extends Object> plus(
    @NonNull SparseArray<@NonNull T> receiver,
    @NonNull SparseArray<@NonNull T> other
)
```

Creates a new collection by adding or replacing entries from `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).plus(android.util.SparseArray)`.

### putAll

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:putAll) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final void <T extends Object> putAll(
    @NonNull SparseArray<@NonNull T> receiver,
    @NonNull SparseArray<@NonNull T> other
)
```

Update this collection by adding or replacing entries from `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).putAll(android.util.SparseArray)`.

### remove

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:remove) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final boolean <T extends Object> remove(
    @NonNull SparseArray<@NonNull T> receiver,
    int key,
    @NonNull T value
)
```

Removes the entry for `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).remove(kotlin.Int,kotlin.Any)` only if it is mapped to `https://developer.android.com/reference/androidx/core/util/package-summary#(android.util.SparseArray).remove(kotlin.Int,kotlin.Any)`.

### set

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:set) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final void <T extends Object> set(
    @NonNull SparseArray<@NonNull T> receiver,
    int key,
    @NonNull T value
)
```

Allows the use of the index operator for storing values in the collection.

### valueIterator

Artifact: [androidx.core:core](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/util/SparseArray.kt+function:valueIterator) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/core#1.1.0)

```
public static final @NonNull Iterator<@NonNull T> <T extends Object> valueIterator(@NonNull SparseArray<@NonNull T> receiver)
```

Return an iterator over the collection's values.