Array
class Array<T>
For Common, JVM, JS
Represents an array (specifically, a Java array when targeting the JVM platform). Array instances can be created using the arrayOf, arrayOfNulls and emptyArray standard library functions. See Kotlin language documentation for more information on arrays.
For Native
Represents an array. Array instances can be created using the constructor, arrayOf, arrayOfNulls and emptyArray standard library functions. See Kotlin language documentation for more information on arrays.
Constructors
<init>
Creates a new array with the specified size, where each element is calculated by calling the specified init function.
<init>(size: Int, init: (Int) -> T)
Properties
size
Returns the number of elements in the array.
val size: Int
Functions
get
Returns the array element at the specified index. This method can be called using the index operator.
operator fun get(index: Int): T
iterator
Creates an iterator for iterating over the elements of the array.
operator fun iterator(): Iterator<T>
Extension Properties
indices
Returns the range of valid indices for the array.
val <T> Array<out T>.indices: IntRange
lastIndex
Returns the last valid index for the array.
val <T> Array<out T>.lastIndex: Int
Extension Functions
all
Returns true
if all elements match the given predicate.
fun <T> Array<out T>.all(predicate: (T) -> Boolean): Boolean
any
Returns true
if array has at least one element.
fun <T> Array<out T>.any(): Boolean
Returns true
if at least one element matches the given predicate.
fun <T> Array<out T>.any(predicate: (T) -> Boolean): Boolean
asIterable
Creates an Iterable instance that wraps the original array returning its elements when being iterated.
fun <T> Array<out T>.asIterable(): Iterable<T>
asSequence
Creates a Sequence instance that wraps the original array returning its elements when being iterated.
fun <T> Array<out T>.asSequence(): Sequence<T>
associate
associateBy
Returns a Map containing the elements from the given array indexed by the key returned from keySelector function applied to each element.
fun <T, K> Array<out T>.associateBy( keySelector: (T) -> K ): Map<K, T>
Returns a Map containing the values provided by valueTransform and indexed by keySelector functions applied to elements of the given array.
fun <T, K, V> Array<out T>.associateBy( keySelector: (T) -> K, valueTransform: (T) -> V ): Map<K, V>
associateByTo
Populates and returns the destination mutable map with key-value pairs, where key is provided by the keySelector function applied to each element of the given array and value is the element itself.
fun <T, K, M : MutableMap<in K, in T>> Array<out T>.associateByTo( destination: M, keySelector: (T) -> K ): M
Populates and returns the destination mutable map with key-value pairs, where key is provided by the keySelector function and and value is provided by the valueTransform function applied to elements of the given array.
fun <T, K, V, M : MutableMap<in K, in V>> Array<out T>.associateByTo( destination: M, keySelector: (T) -> K, valueTransform: (T) -> V ): M
associateTo
Populates and returns the destination mutable map with key-value pairs provided by transform function applied to each element of the given array.
fun <T, K, V, M : MutableMap<in K, in V>> Array<out T>.associateTo( destination: M, transform: (T) -> Pair<K, V> ): M
associateWith
Returns a Map where keys are elements from the given array and values are produced by the valueSelector function applied to each element.
fun <K, V> Array<out K>.associateWith( valueSelector: (K) -> V ): Map<K, V>
associateWithTo
Populates and returns the destination mutable map with key-value pairs for each element of the given array, where key is the element itself and value is provided by the valueSelector function applied to that key.
fun <K, V, M : MutableMap<in K, in V>> Array<out K>.associateWithTo( destination: M, valueSelector: (K) -> V ): M
average
Returns an average value of elements in the array.
fun Array<out Byte>.average(): Double
fun Array<out Short>.average(): Double
fun Array<out Int>.average(): Double
fun Array<out Long>.average(): Double
fun Array<out Float>.average(): Double
fun Array<out Double>.average(): Double
binarySearch
Searches the array or the range of the array for the provided element using the binary search algorithm. The array is expected to be sorted according to the specified comparator, otherwise the result is undefined.
fun <T> Array<out T>.binarySearch( element: T, comparator: Comparator<in T>, fromIndex: Int = 0, toIndex: Int = size ): Int
Searches the array or the range of the array for the provided element using the binary search algorithm. The array is expected to be sorted, otherwise the result is undefined.
fun <T> Array<out T>.binarySearch( element: T, fromIndex: Int = 0, toIndex: Int = size ): Int
component1
Returns 1st element from the array.
operator fun <T> Array<out T>.component1(): T
component2
Returns 2nd element from the array.
operator fun <T> Array<out T>.component2(): T
component3
Returns 3rd element from the array.
operator fun <T> Array<out T>.component3(): T
component4
Returns 4th element from the array.
operator fun <T> Array<out T>.component4(): T
component5
Returns 5th element from the array.
operator fun <T> Array<out T>.component5(): T
contains
Returns true
if element is found in the array.
operator fun <T> Array<out T>.contains(element: T): Boolean
count
Returns the number of elements in this array.
fun <T> Array<out T>.count(): Int
Returns the number of elements matching the given predicate.
fun <T> Array<out T>.count(predicate: (T) -> Boolean): Int
distinct
Returns a list containing only distinct elements from the given array.
fun <T> Array<out T>.distinct(): List<T>
distinctBy
Returns a list containing only elements from the given array having distinct keys returned by the given selector function.
fun <T, K> Array<out T>.distinctBy( selector: (T) -> K ): List<T>
drop
Returns a list containing all elements except first n elements.
fun <T> Array<out T>.drop(n: Int): List<T>
dropLast
Returns a list containing all elements except last n elements.
fun <T> Array<out T>.dropLast(n: Int): List<T>
dropLastWhile
Returns a list containing all elements except last elements that satisfy the given predicate.
fun <T> Array<out T>.dropLastWhile( predicate: (T) -> Boolean ): List<T>
dropWhile
Returns a list containing all elements except first elements that satisfy the given predicate.
fun <T> Array<out T>.dropWhile( predicate: (T) -> Boolean ): List<T>
elementAtOrElse
Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this array.
fun <T> Array<out T>.elementAtOrElse( index: Int, defaultValue: (Int) -> T ): T
elementAtOrNull
filter
Returns a list containing only elements matching the given predicate.
fun <T> Array<out T>.filter( predicate: (T) -> Boolean ): List<T>
filterIndexed
Returns a list containing only elements matching the given predicate.
fun <T> Array<out T>.filterIndexed( predicate: (index: Int, T) -> Boolean ): List<T>
filterIndexedTo
Appends all elements matching the given predicate to the given destination.
fun <T, C : MutableCollection<in T>> Array<out T>.filterIndexedTo( destination: C, predicate: (index: Int, T) -> Boolean ): C
filterIsInstance
Returns a list containing all elements that are instances of specified type parameter R.
fun <R> Array<*>.filterIsInstance(): List<R>
Returns a list containing all elements that are instances of specified class.
fun <R> Array<*>.filterIsInstance(klass: Class<R>): List<R>
filterIsInstanceTo
Appends all elements that are instances of specified type parameter R to the given destination.
fun <R, C : MutableCollection<in R>> Array<*>.filterIsInstanceTo( destination: C ): C
Appends all elements that are instances of specified class to the given destination.
fun <C : MutableCollection<in R>, R> Array<*>.filterIsInstanceTo( destination: C, klass: Class<R> ): C
filterNot
Returns a list containing all elements not matching the given predicate.
fun <T> Array<out T>.filterNot( predicate: (T) -> Boolean ): List<T>
filterNotNull
Returns a list containing all elements that are not null
.
fun <T : Any> Array<out T?>.filterNotNull(): List<T>
filterNotNullTo
Appends all elements that are not null
to the given destination.
fun <C : MutableCollection<in T>, T : Any> Array<out T?>.filterNotNullTo( destination: C ): C
filterNotTo
Appends all elements not matching the given predicate to the given destination.
fun <T, C : MutableCollection<in T>> Array<out T>.filterNotTo( destination: C, predicate: (T) -> Boolean ): C
filterTo
Appends all elements matching the given predicate to the given destination.
fun <T, C : MutableCollection<in T>> Array<out T>.filterTo( destination: C, predicate: (T) -> Boolean ): C
find
Returns the first element matching the given predicate, or null
if no such element was found.
fun <T> Array<out T>.find(predicate: (T) -> Boolean): T?
findLast
Returns the last element matching the given predicate, or null
if no such element was found.
fun <T> Array<out T>.findLast(predicate: (T) -> Boolean): T?
first
Returns first element.
fun <T> Array<out T>.first(): T
Returns the first element matching the given predicate.
fun <T> Array<out T>.first(predicate: (T) -> Boolean): T
firstOrNull
Returns the first element, or null
if the array is empty.
fun <T> Array<out T>.firstOrNull(): T?
Returns the first element matching the given predicate, or null
if element was not found.
fun <T> Array<out T>.firstOrNull( predicate: (T) -> Boolean ): T?
flatMap
Returns a single list of all elements yielded from results of transform function being invoked on each element of original array.
fun <T, R> any_array<T>.flatMap( transform: (T) -> Iterable<R> ): List<R>
flatMapIndexed
Returns a single list of all elements yielded from results of transform function being invoked on each element and its index in the original array.
fun <T, R> any_array<T>.flatMapIndexed( transform: (index: Int, T) -> Iterable<R> ): List<R>
flatMapIndexedTo
Appends all elements yielded from results of transform function being invoked on each element and its index in the original array, to the given destination.
fun <T, R, C : MutableCollection<in R>> any_array<T>.flatMapIndexedTo( destination: C, transform: (index: Int, T) -> Iterable<R> ): C
flatMapTo
Appends all elements yielded from results of transform function being invoked on each element of original array, to the given destination.
fun <T, R, C : MutableCollection<in R>> any_array<T>.flatMapTo( destination: C, transform: (T) -> Iterable<R> ): C
flatten
Returns a single list of all elements from all arrays in the given array.
fun <T> Array<out Array<out T>>.flatten(): List<T>
fold
foldIndexed
foldRight
foldRightIndexed
forEach
Performs the given action on each element.
fun <T> Array<out T>.forEach(action: (T) -> Unit)
forEachIndexed
Performs the given action on each element, providing sequential index with the element.
fun <T> Array<out T>.forEachIndexed( action: (index: Int, T) -> Unit)
getOrElse
Returns an element at the given index or the result of calling the defaultValue function if the index is out of bounds of this array.
fun <T> Array<out T>.getOrElse( index: Int, defaultValue: (Int) -> T ): T
getOrNull
groupBy
Groups elements of the original array by the key returned by the given keySelector function applied to each element and returns a map where each group key is associated with a list of corresponding elements.
fun <T, K> Array<out T>.groupBy( keySelector: (T) -> K ): Map<K, List<T>>
Groups values returned by the valueTransform function applied to each element of the original array by the key returned by the given keySelector function applied to the element and returns a map where each group key is associated with a list of corresponding values.
fun <T, K, V> Array<out T>.groupBy( keySelector: (T) -> K, valueTransform: (T) -> V ): Map<K, List<V>>
groupByTo
Groups elements of the original array by the key returned by the given keySelector function applied to each element and puts to the destination map each group key associated with a list of corresponding elements.
fun <T, K, M : MutableMap<in K, MutableList<T>>> Array<out T>.groupByTo( destination: M, keySelector: (T) -> K ): M
Groups values returned by the valueTransform function applied to each element of the original array by the key returned by the given keySelector function applied to the element and puts to the destination map each group key associated with a list of corresponding values.
fun <T, K, V, M : MutableMap<in K, MutableList<V>>> Array<out T>.groupByTo( destination: M, keySelector: (T) -> K, valueTransform: (T) -> V ): M
groupingBy
Creates a Grouping source from an array to be used later with one of group-and-fold operations using the specified keySelector function to extract a key from each element.
fun <T, K> Array<out T>.groupingBy( keySelector: (T) -> K ): Grouping<T, K>
indexOf
Returns first index of element, or -1 if the array does not contain element.
fun <T> Array<out T>.indexOf(element: T): Int
indexOfFirst
Returns index of the first element matching the given predicate, or -1 if the array does not contain such element.
fun <T> Array<out T>.indexOfFirst( predicate: (T) -> Boolean ): Int
indexOfLast
Returns index of the last element matching the given predicate, or -1 if the array does not contain such element.
fun <T> Array<out T>.indexOfLast( predicate: (T) -> Boolean ): Int
intersect
Returns a set containing all elements that are contained by both this array and the specified collection.
infix fun <T> Array<out T>.intersect( other: Iterable<T> ): Set<T>
isArrayOf
Checks if array can contain element of type T.
fun <T : Any> Array<*>.isArrayOf(): Boolean
isEmpty
Returns true
if the array is empty.
fun <T> Array<out T>.isEmpty(): Boolean
isNotEmpty
Returns true
if the array is not empty.
fun <T> Array<out T>.isNotEmpty(): Boolean
isNullOrEmpty
Returns true
if this nullable array is either null or empty.
fun Array<*>?.isNullOrEmpty(): Boolean
joinTo
Appends the string from all the elements separated using separator and using the given prefix and postfix if supplied.
fun <T, A : Appendable> Array<out T>.joinTo( buffer: A, separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "...", transform: ((T) -> CharSequence)? = null ): A
joinToString
Creates a string from all the elements separated using separator and using the given prefix and postfix if supplied.
fun <T> Array<out T>.joinToString( separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "...", transform: ((T) -> CharSequence)? = null ): String
last
Returns the last element.
fun <T> Array<out T>.last(): T
Returns the last element matching the given predicate.
fun <T> Array<out T>.last(predicate: (T) -> Boolean): T
lastIndexOf
Returns last index of element, or -1 if the array does not contain element.
fun <T> Array<out T>.lastIndexOf(element: T): Int
lastOrNull
Returns the last element, or null
if the array is empty.
fun <T> Array<out T>.lastOrNull(): T?
Returns the last element matching the given predicate, or null
if no such element was found.
fun <T> Array<out T>.lastOrNull( predicate: (T) -> Boolean ): T?
map
Returns a list containing the results of applying the given transform function to each element in the original array.
fun <T, R> Array<out T>.map(transform: (T) -> R): List<R>
mapIndexed
Returns a list containing the results of applying the given transform function to each element and its index in the original array.
fun <T, R> Array<out T>.mapIndexed( transform: (index: Int, T) -> R ): List<R>
mapIndexedNotNull
Returns a list containing only the non-null results of applying the given transform function to each element and its index in the original array.
fun <T, R : Any> Array<out T>.mapIndexedNotNull( transform: (index: Int, T) -> R? ): List<R>
mapIndexedNotNullTo
Applies the given transform function to each element and its index in the original array and appends only the non-null results to the given destination.
fun <T, R : Any, C : MutableCollection<in R>> Array<out T>.mapIndexedNotNullTo( destination: C, transform: (index: Int, T) -> R? ): C
mapIndexedTo
Applies the given transform function to each element and its index in the original array and appends the results to the given destination.
fun <T, R, C : MutableCollection<in R>> Array<out T>.mapIndexedTo( destination: C, transform: (index: Int, T) -> R ): C
mapNotNull
Returns a list containing only the non-null results of applying the given transform function to each element in the original array.
fun <T, R : Any> Array<out T>.mapNotNull( transform: (T) -> R? ): List<R>
mapNotNullTo
Applies the given transform function to each element in the original array and appends only the non-null results to the given destination.
fun <T, R : Any, C : MutableCollection<in R>> Array<out T>.mapNotNullTo( destination: C, transform: (T) -> R? ): C
mapTo
Applies the given transform function to each element of the original array and appends the results to the given destination.
fun <T, R, C : MutableCollection<in R>> Array<out T>.mapTo( destination: C, transform: (T) -> R ): C
max
fun <T : Comparable<T>> any_array<T>.max(): T?
maxBy
fun <T, R : Comparable<R>> Array<out T>.maxBy( selector: (T) -> R ): T?
maxByOrNull
Returns the first element yielding the largest value of the given function or null
if there are no elements.
fun <T, R : Comparable<R>> Array<out T>.maxByOrNull( selector: (T) -> R ): T?
maxOf
Returns the largest value among all values produced by selector function applied to each element in the array.
fun <T> any_array<T>.maxOf(selector: (T) -> Double): Double
maxOfOrNull
Returns the largest value among all values produced by selector function applied to each element in the array or null
if there are no elements.
fun <T> any_array<T>.maxOfOrNull( selector: (T) -> Double ): Double?
maxOfWith
Returns the largest value according to the provided comparator among all values produced by selector function applied to each element in the array.
fun <T, R> Array<out T>.maxOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
maxOfWithOrNull
Returns the largest value according to the provided comparator among all values produced by selector function applied to each element in the array or null
if there are no elements.
fun <T, R> Array<out T>.maxOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
maxOrNull
Returns the largest element or null
if there are no elements.
fun <T : Comparable<T>> any_array<T>.maxOrNull(): T?
maxWith
fun <T> Array<out T>.maxWith( comparator: Comparator<in T> ): T?
maxWithOrNull
Returns the first element having the largest value according to the provided comparator or null
if there are no elements.
fun <T> Array<out T>.maxWithOrNull( comparator: Comparator<in T> ): T?
min
fun <T : Comparable<T>> any_array<T>.min(): T?
minBy
fun <T, R : Comparable<R>> Array<out T>.minBy( selector: (T) -> R ): T?
minByOrNull
Returns the first element yielding the smallest value of the given function or null
if there are no elements.
fun <T, R : Comparable<R>> Array<out T>.minByOrNull( selector: (T) -> R ): T?
minOf
Returns the smallest value among all values produced by selector function applied to each element in the array.
fun <T> any_array<T>.minOf(selector: (T) -> Double): Double
minOfOrNull
Returns the smallest value among all values produced by selector function applied to each element in the array or null
if there are no elements.
fun <T> any_array<T>.minOfOrNull( selector: (T) -> Double ): Double?
minOfWith
Returns the smallest value according to the provided comparator among all values produced by selector function applied to each element in the array.
fun <T, R> Array<out T>.minOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
minOfWithOrNull
Returns the smallest value according to the provided comparator among all values produced by selector function applied to each element in the array or null
if there are no elements.
fun <T, R> Array<out T>.minOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
minOrNull
Returns the smallest element or null
if there are no elements.
fun <T : Comparable<T>> any_array<T>.minOrNull(): T?
minWith
fun <T> Array<out T>.minWith( comparator: Comparator<in T> ): T?
minWithOrNull
Returns the first element having the smallest value according to the provided comparator or null
if there are no elements.
fun <T> Array<out T>.minWithOrNull( comparator: Comparator<in T> ): T?
none
Returns true
if the array has no elements.
fun <T> Array<out T>.none(): Boolean
Returns true
if no elements match the given predicate.
fun <T> Array<out T>.none(predicate: (T) -> Boolean): Boolean
onEach
Performs the given action on each element and returns the array itself afterwards.
fun <T> Array<out T>.onEach( action: (T) -> Unit ): Array<out T>
onEachIndexed
Performs the given action on each element, providing sequential index with the element, and returns the array itself afterwards.
fun <T> Array<out T>.onEachIndexed( action: (index: Int, T) -> Unit ): Array<out T>
partition
random
Returns a random element from this array.
fun <T> Array<out T>.random(): T
Returns a random element from this array using the specified source of randomness.
fun <T> Array<out T>.random(random: Random): T
randomOrNull
Returns a random element from this array, or null
if this array is empty.
fun <T> Array<out T>.randomOrNull(): T?
Returns a random element from this array using the specified source of randomness, or null
if this array is empty.
fun <T> Array<out T>.randomOrNull(random: Random): T?
reduce
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element.
fun <S, T : S> Array<out T>.reduce( operation: (acc: S, T) -> S ): S
reduceIndexed
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element with its index in the original array.
fun <S, T : S> Array<out T>.reduceIndexed( operation: (index: Int, acc: S, T) -> S ): S
reduceIndexedOrNull
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element with its index in the original array.
fun <S, T : S> Array<out T>.reduceIndexedOrNull( operation: (index: Int, acc: S, T) -> S ): S?
reduceOrNull
Accumulates value starting with the first element and applying operation from left to right to current accumulator value and each element.
fun <S, T : S> Array<out T>.reduceOrNull( operation: (acc: S, T) -> S ): S?
reduceRight
Accumulates value starting with the last element and applying operation from right to left to each element and current accumulator value.
fun <S, T : S> Array<out T>.reduceRight( operation: (T, acc: S) -> S ): S
reduceRightIndexed
Accumulates value starting with the last element and applying operation from right to left to each element with its index in the original array and current accumulator value.
fun <S, T : S> Array<out T>.reduceRightIndexed( operation: (index: Int, T, acc: S) -> S ): S
reduceRightIndexedOrNull
Accumulates value starting with the last element and applying operation from right to left to each element with its index in the original array and current accumulator value.
fun <S, T : S> Array<out T>.reduceRightIndexedOrNull( operation: (index: Int, T, acc: S) -> S ): S?
reduceRightOrNull
Accumulates value starting with the last element and applying operation from right to left to each element and current accumulator value.
fun <S, T : S> Array<out T>.reduceRightOrNull( operation: (T, acc: S) -> S ): S?
requireNoNulls
Returns an original collection containing all the non-null
elements, throwing an IllegalArgumentException if there are any null
elements.
fun <T : Any> Array<T?>.requireNoNulls(): Array<T>
reverse
Reverses elements in the array in-place.
fun <T> Array<T>.reverse()
Reverses elements of the array in the specified range in-place.
fun <T> Array<T>.reverse(fromIndex: Int, toIndex: Int)
reversed
Returns a list with elements in reversed order.
fun <T> Array<out T>.reversed(): List<T>
reversedArray
Returns an array with elements of this array in reversed order.
fun <T> Array<T>.reversedArray(): Array<T>
runningFold
runningFoldIndexed
Returns a list containing successive accumulation values generated by applying operation from left to right to each element, its index in the original array and current accumulator value that starts with initial value.
fun <T, R> Array<out T>.runningFoldIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
runningReduce
Returns a list containing successive accumulation values generated by applying operation from left to right to each element and current accumulator value that starts with the first element of this array.
fun <S, T : S> Array<out T>.runningReduce( operation: (acc: S, T) -> S ): List<S>
runningReduceIndexed
Returns a list containing successive accumulation values generated by applying operation from left to right to each element, its index in the original array and current accumulator value that starts with the first element of this array.
fun <S, T : S> Array<out T>.runningReduceIndexed( operation: (index: Int, acc: S, T) -> S ): List<S>
scan
scanIndexed
Returns a list containing successive accumulation values generated by applying operation from left to right to each element, its index in the original array and current accumulator value that starts with initial value.
fun <T, R> Array<out T>.scanIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
scanReduce
fun <S, T : S> Array<out T>.scanReduce( operation: (acc: S, T) -> S ): List<S>
scanReduceIndexed
fun <S, T : S> Array<out T>.scanReduceIndexed( operation: (index: Int, acc: S, T) -> S ): List<S>
shuffle
Randomly shuffles elements in this array in-place.
fun <T> Array<T>.shuffle()
Randomly shuffles elements in this array in-place using the specified random instance as the source of randomness.
fun <T> Array<T>.shuffle(random: Random)
single
Returns the single element, or throws an exception if the array is empty or has more than one element.
fun <T> Array<out T>.single(): T
Returns the single element matching the given predicate, or throws exception if there is no or more than one matching element.
fun <T> Array<out T>.single(predicate: (T) -> Boolean): T
singleOrNull
Returns single element, or null
if the array is empty or has more than one element.
fun <T> Array<out T>.singleOrNull(): T?
Returns the single element matching the given predicate, or null
if element was not found or more than one element was found.
fun <T> Array<out T>.singleOrNull( predicate: (T) -> Boolean ): T?
slice
Returns a list containing elements at indices in the specified indices range.
fun <T> Array<out T>.slice(indices: IntRange): List<T>
Returns a list containing elements at specified indices.
fun <T> Array<out T>.slice(indices: Iterable<Int>): List<T>
sliceArray
Returns an array containing elements of this array at specified indices.
fun <T> Array<T>.sliceArray( indices: Collection<Int> ): Array<T>
Returns an array containing elements at indices in the specified indices range.
fun <T> Array<T>.sliceArray(indices: IntRange): Array<T>
sort
Sorts the array in-place according to the order specified by the given comparison function.
fun <T> Array<out T>.sort(comparison: (a: T, b: T) -> Int)
sortBy
Sorts elements in the array in-place according to natural sort order of the value returned by specified selector function.
fun <T, R : Comparable<R>> Array<out T>.sortBy( selector: (T) -> R?)
sortByDescending
Sorts elements in the array in-place descending according to natural sort order of the value returned by specified selector function.
fun <T, R : Comparable<R>> Array<out T>.sortByDescending( selector: (T) -> R?)
sortDescending
Sorts elements in the array in-place descending according to their natural sort order.
fun <T : Comparable<T>> Array<out T>.sortDescending()
Sorts elements of the array in the specified range in-place. The elements are sorted descending according to their natural sort order.
fun <T : Comparable<T>> Array<out T>.sortDescending( fromIndex: Int, toIndex: Int)
sorted
Returns a list of all elements sorted according to their natural sort order.
fun <T : Comparable<T>> Array<out T>.sorted(): List<T>
sortedArray
Returns an array with all elements of this array sorted according to their natural sort order.
fun <T : Comparable<T>> Array<T>.sortedArray(): Array<T>
sortedArrayDescending
Returns an array with all elements of this array sorted descending according to their natural sort order.
fun <T : Comparable<T>> Array<T>.sortedArrayDescending(): Array<T>
sortedArrayWith
Returns an array with all elements of this array sorted according the specified comparator.
fun <T> Array<out T>.sortedArrayWith( comparator: Comparator<in T> ): Array<out T>
sortedBy
Returns a list of all elements sorted according to natural sort order of the value returned by specified selector function.
fun <T, R : Comparable<R>> Array<out T>.sortedBy( selector: (T) -> R? ): List<T>
sortedByDescending
Returns a list of all elements sorted descending according to natural sort order of the value returned by specified selector function.
fun <T, R : Comparable<R>> Array<out T>.sortedByDescending( selector: (T) -> R? ): List<T>
sortedDescending
Returns a list of all elements sorted descending according to their natural sort order.
fun <T : Comparable<T>> Array<out T>.sortedDescending(): List<T>
sortedWith
Returns a list of all elements sorted according to the specified comparator.
fun <T> Array<out T>.sortedWith( comparator: Comparator<in T> ): List<T>
sortWith
Sorts the array in-place according to the order specified by the given comparator.
fun <T> Array<out T>.sortWith(comparator: Comparator<in T>)
Sorts a range in the array in-place with the given comparator.
fun <T> Array<out T>.sortWith( comparator: Comparator<in T>, fromIndex: Int = 0, toIndex: Int = size)
subarrayContentToString
Returns a string representation of the contents of the subarray of the specified array as if it is List.
fun <T> Array<out T>.subarrayContentToString( offset: Int, length: Int ): String
subtract
Returns a set containing all elements that are contained by this array and not contained by the specified collection.
infix fun <T> Array<out T>.subtract( other: Iterable<T> ): Set<T>
sum
Returns the sum of all elements in the array.
fun Array<out Byte>.sum(): Int
fun Array<out Short>.sum(): Int
fun Array<out Int>.sum(): Int
fun Array<out Long>.sum(): Long
fun Array<out Float>.sum(): Float
fun Array<out Double>.sum(): Double
fun Array<out UInt>.sum(): UInt
fun Array<out ULong>.sum(): ULong
fun Array<out UByte>.sum(): UInt
fun Array<out UShort>.sum(): UInt
sumBy
Returns the sum of all values produced by selector function applied to each element in the array.
fun <T> Array<out T>.sumBy(selector: (T) -> Int): Int
sumByDouble
Returns the sum of all values produced by selector function applied to each element in the array.
fun <T> Array<out T>.sumByDouble( selector: (T) -> Double ): Double
sumOf
Returns the sum of all values produced by selector function applied to each element in the array.
fun <T> any_array<T>.sumOf(selector: (T) -> Double): Double
take
Returns a list containing first n elements.
fun <T> Array<out T>.take(n: Int): List<T>
takeLast
Returns a list containing last n elements.
fun <T> Array<out T>.takeLast(n: Int): List<T>
takeLastWhile
Returns a list containing last elements satisfying the given predicate.
fun <T> Array<out T>.takeLastWhile( predicate: (T) -> Boolean ): List<T>
takeWhile
Returns a list containing first elements satisfying the given predicate.
fun <T> Array<out T>.takeWhile( predicate: (T) -> Boolean ): List<T>
toBooleanArray
Returns an array of Boolean containing all of the elements of this generic array.
fun Array<out Boolean>.toBooleanArray(): BooleanArray
toByteArray
Returns an array of Byte containing all of the elements of this generic array.
fun Array<out Byte>.toByteArray(): ByteArray
toCharArray
Returns an array of Char containing all of the elements of this generic array.
fun Array<out Char>.toCharArray(): CharArray
toCollection
Appends all elements to the given destination collection.
fun <T, C : MutableCollection<in T>> Array<out T>.toCollection( destination: C ): C
toCStringArray
Convert this array of Kotlin strings to C array of C strings, allocating memory for the array and C strings with given AutofreeScope.
fun Array<String>.toCStringArray( autofreeScope: AutofreeScope ): CPointer<CPointerVar<ByteVar>>
toCValues
fun <T : CPointed> Array<CPointer<T>?>.toCValues(): CValues<CPointerVar<T>>
toDoubleArray
Returns an array of Double containing all of the elements of this generic array.
fun Array<out Double>.toDoubleArray(): DoubleArray
toFloatArray
Returns an array of Float containing all of the elements of this generic array.
fun Array<out Float>.toFloatArray(): FloatArray
toHashSet
Returns a new HashSet of all elements.
fun <T> Array<out T>.toHashSet(): HashSet<T>
toIntArray
Returns an array of Int containing all of the elements of this generic array.
fun Array<out Int>.toIntArray(): IntArray
toList
Returns a List containing all elements.
fun <T> Array<out T>.toList(): List<T>
toLongArray
Returns an array of Long containing all of the elements of this generic array.
fun Array<out Long>.toLongArray(): LongArray
toMap
Returns a new map containing all key-value pairs from the given array of pairs.
fun <K, V> Array<out Pair<K, V>>.toMap(): Map<K, V>
Populates and returns the destination mutable map with key-value pairs from the given array of pairs.
fun <K, V, M : MutableMap<in K, in V>> Array<out Pair<K, V>>.toMap( destination: M ): M
toMutableList
Returns a new MutableList filled with all elements of this array.
fun <T> Array<out T>.toMutableList(): MutableList<T>
toMutableSet
Returns a new MutableSet containing all distinct elements from the given array.
fun <T> Array<out T>.toMutableSet(): MutableSet<T>
toSet
Returns a Set of all elements.
fun <T> Array<out T>.toSet(): Set<T>
toShortArray
Returns an array of Short containing all of the elements of this generic array.
fun Array<out Short>.toShortArray(): ShortArray
toSortedSet
Returns a new SortedSet of all elements.
fun <T : Comparable<T>> any_array<T>.toSortedSet(): SortedSet<T>
toUByteArray
Returns an array of UByte containing all of the elements of this generic array.
fun Array<out UByte>.toUByteArray(): UByteArray
toUIntArray
Returns an array of UInt containing all of the elements of this generic array.
fun Array<out UInt>.toUIntArray(): UIntArray
toULongArray
Returns an array of ULong containing all of the elements of this generic array.
fun Array<out ULong>.toULongArray(): ULongArray
toUShortArray
Returns an array of UShort containing all of the elements of this generic array.
fun Array<out UShort>.toUShortArray(): UShortArray
union
Returns a set containing all distinct elements from both collections.
infix fun <T> Array<out T>.union(other: Iterable<T>): Set<T>
unzip
Returns a pair of lists, where first list is built from the first values of each pair from this array, second list is built from the second values of each pair from this array.
fun <T, R> Array<out Pair<T, R>>.unzip(): Pair<List<T>, List<R>>
withIndex
Returns a lazy Iterable that wraps each element of the original array into an IndexedValue containing the index of that element and the element itself.
fun <T> Array<out T>.withIndex(): Iterable<IndexedValue<T>>
zip
Returns a list of pairs built from the elements of this
array and the other array with the same index. The returned list has length of the shortest collection.
infix fun <T, R> Array<out T>.zip( other: Array<out R> ): List<Pair<T, R>>
Returns a list of values built from the elements of this
array and the other array with the same index using the provided transform function applied to each pair of elements. The returned list has length of the shortest collection.
fun <T, R, V> Array<out T>.zip( other: Array<out R>, transform: (a: T, b: R) -> V ): List<V>
Returns a list of pairs built from the elements of this
collection and other array with the same index. The returned list has length of the shortest collection.
infix fun <T, R> Array<out T>.zip( other: Iterable<R> ): List<Pair<T, R>>
Returns a list of values built from the elements of this
array and the other collection with the same index using the provided transform function applied to each pair of elements. The returned list has length of the shortest collection.
fun <T, R, V> Array<out T>.zip( other: Iterable<R>, transform: (a: T, b: R) -> V ): List<V>
© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html