Функция lastIndexOf
Функция lastIndexOf выполняет поиск последнего вхождения
указанного элемента в коллекции. Возвращает индекс последнего
вхождения элемента или -1, если элемент не найден.
Функция работает с массивами Array, списками List,
и другими типами коллекций, поддерживающими индексацию.
Синтаксис
fun <T> Array<out T>.lastIndexOf(element: T): Int
fun <T> List<T>.lastIndexOf(element: T): Int
fun ByteArray.lastIndexOf(element: Byte): Int
fun ShortArray.lastIndexOf(element: Short): Int
fun IntArray.lastIndexOf(element: Int): Int
fun LongArray.lastIndexOf(element: Long): Int
fun FloatArray.lastIndexOf(element: Float): Int
fun DoubleArray.lastIndexOf(element: Double): Int
fun BooleanArray.lastIndexOf(element: Boolean): Int
fun CharArray.lastIndexOf(element: Char): Int
fun <T> Iterable<T>.lastIndexOf(element: T): Int
Пример
Найдем последнее вхождение элемента 'c' в массиве:
val arr = arrayOf('a', 'b', 'c', 'd', 'c', 'e')
val res = arr.lastIndexOf('c')
println(res)
Результат выполнения кода:
Int 4
Пример
Найдем последнее вхождение элемента 3 в списке:
val list = listOf(1, 2, 3, 4, 3, 5)
val res = list.lastIndexOf(3)
println(res)
Результат выполнения кода:
Int 4
Пример
Поиск элемента, которого нет в коллекции:
val arr = arrayOf('a', 'b', 'c', 'd', 'e')
val res = arr.lastIndexOf('x')
println(res)
Результат выполнения кода:
Int -1
Пример
Поиск в массиве примитивных типов:
val intArr = intArrayOf(10, 20, 30, 20, 40)
val res = intArr.lastIndexOf(20)
println(res)
Результат выполнения кода:
Int 3
Для каких типов коллекций работает
Функция lastIndexOf доступна для следующих типов коллекций:
Array<T>- массивы объектовList<T>- спискиIterable<T>- итерируемые коллекцииByteArray,ShortArray,IntArray,LongArray- массивы примитивных чиселFloatArray,DoubleArray- массивы чисел с плавающей точкойBooleanArray- массивы булевых значенийCharArray- массивы символов
Для Set и Map функция lastIndexOf не доступна,
так как эти коллекции не гарантируют порядок элементов
и не поддерживают индексацию.
Смотрите также
-
функцию
indexOf,
которая ищет первое вхождение элемента -
функцию
indexOfFirst,
которая ищет первый элемент, удовлетворяющий условию -
функцию
indexOfLast,
которая ищет последний элемент, удовлетворяющий условию -
функцию
contains,
которая проверяет наличие элемента в коллекции