Тип UIntArray

Тип UIntArray представляет массив беззнаковых 32-битных целых чисел. Каждый элемент массива имеет тип UInt и занимает 4 байта. Размер массива фиксирован после создания и не может быть изменен.

Создание массива

kotlinval arr1 = UIntArray(5)

Создает массив из 5 элементов, каждый из которых инициализирован нулевым значением.

kotlinval arr2 = uintArrayOf(1U, 2U, 3U, 4U, 5U)

Создает массив с указанными значениями. Суффикс U указывает, что число беззнаковое.

kotlinval arr3 = UIntArray(5) { it * 2U }

Создает массив из 5 элементов, где каждый элемент вычисляется лямбда-функцией. Параметр it содержит индекс текущего элемента.

Доступ к элементам

kotlinval arr = uintArrayOf(10U, 20U, 30U)
val first = arr[0]
val last = arr[arr.size - 1]
println(first)
println(last)

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

kotlinUInt 10
UInt 30
kotlinval arr = uintArrayOf(10U, 20U, 30U)
arr[1] = 25U
println(arr[1])

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

kotlinUInt 25

Свойства и методы

kotlinval arr = uintArrayOf(1U, 2U, 3U, 4U, 5U)
val size = arr.size
val firstIndex = arr.indices.first
val lastIndex = arr.indices.last
println(size)
println(firstIndex)
println(lastIndex)

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

kotlinInt 5
Int 0
Int 4
kotlinval arr = uintArrayOf(1U, 2U, 3U)

for (element in arr) {
  println(element)
}

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

kotlinUInt 1
UInt 2
UInt 3
kotlinval arr = uintArrayOf(1U, 2U, 3U)

for (index in arr.indices) {
  println("Index $index: ${arr[index]}")
}

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

kotlinString "Index 0: 1"
String "Index 1: 2"
String "Index 2: 3"

Пример

Создадим массив из 5 элементов и заполним его квадратами индексов:

kotlinval squares = UIntArray(5) { it * it }

for (num in squares) {
  println(num)
}

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

kotlinUInt 0
UInt 1
UInt 4
UInt 9
UInt 16

Пример

Найдем сумму всех элементов массива:

kotlinval arr = uintArrayOf(10U, 20U, 30U, 40U, 50U)
var sum = 0U

for (num in arr) {
  sum += num
}

println(sum)

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

kotlinUInt 150

Пример

Преобразуем UIntArray в обычный массив Array<UInt>:

kotlinval uintArr = uintArrayOf(1U, 2U, 3U)
val normalArr: Array<UInt> = uintArr.toTypedArray()

for (item in normalArr) {
  println(item)
}

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

kotlinUInt 1
UInt 2
UInt 3

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

  • тип UInt,
    который представляет беззнаковое целое число
  • тип IntArray,
    который представляет массив знаковых целых чисел
  • тип Array,
    который представляет универсальный массив
  • тип List,
    который представляет неизменяемый список