Программисты больше не нужны!
Нужны ИИ инженеры! Хотите научиться? Вступайте в канал!
465 of 1319 menu
◀ ▶

Свойство indices

Свойство indices возвращает объект типа IntRange, который содержит все допустимые индексы коллекции. Для пустой коллекции возвращает пустой диапазон. Доступно для всех коллекций, реализующих интерфейс Collection.

Синтаксис

val Collection<*>.indices: IntRange

Пример

Получим индексы списка строк:

val list = listOf("a", "b", "c", "d", "e") val res = list.indices println(res)

Результат выполнения кода:

IntRange 0..4

Пример

Получим индексы пустого списка:

val emptyList = emptyList<String>() val res = emptyList.indices println(res)

Результат выполнения кода:

IntRange 0..-1

Пример

Использование indices для итерации по индексам коллекции:

val numbers = listOf(10, 20, 30, 40, 50) for (index in numbers.indices) { println("Index: $index, Value: ${numbers[index]}") }

Результат выполнения кода:

Index: 0, Value: 10 Index: 1, Value: 20 Index: 2, Value: 30 Index: 3, Value: 40 Index: 4, Value: 50

Пример

Проверка, что индекс находится в допустимом диапазоне:

val chars = listOf('a', 'b', 'c') val indexToCheck = 2 if (indexToCheck in chars.indices) { println("Index $indexToCheck is valid") } else { println("Index $indexToCheck is invalid") }

Результат выполнения кода:

Index 2 is valid

Пример

Использование с массивом:

val array = arrayOf(1, 2, 3, 4, 5) val res = array.indices println(res)

Результат выполнения кода:

IntRange 0..4

Смотрите также

  • свойство lastIndex,
    которое возвращает последний индекс коллекции
  • функцию withIndex,
    которая возвращает итератор по парам индекс-значение
  • функцию forEachIndexed,
    которая выполняет действие для каждого элемента с его индексом
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить