Котлин. Как обнулить каждый элемент массива?
Я использую FloatArray:
private val values = FloatArray(5)
В какой-то момент мне нужно сбросить каждое значение массива до нуля. Я пытался сделать это так:
values.onEachIndexed { index, value -> value[index] = 0.0f }
Но я получаю эту ошибку
Нет заданного метода, обеспечивающего доступ к массиву
В то же время этот код работает (вне onEachIndexed), и я могу установить значение для элемента:
values[1] = 4.0f
Что я делаю не так ? пожалуйста, помогите мне
1 ответ
Ваша попытка не работает, потому что представляет собой элемент массива, а не сам массив, поэтому вы не можете использовать[]
установить его. Переназначить ему новое значение тоже не получится, т.к.value
является лямбда-параметром.
Существует встроенный метод для заполнения всего (или части) массива -fill
values.fill(0.0f)