НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
456 of 1310 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 для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить