У меня есть следующий ArrayList в Kotlin:
private var myArrayList = arrayListOf<ByteArray>(ByteArray(20), ByteArray(20), ByteArray(20))
Мое понимание этого синтаксиса состоит в том, что размер этого ArrayList
неявно определяется количеством элементов, передаваемых в конструктор; так 3 в этом случае? В дополнение к этому, я должен иметь доступ к n-му элементу этого ArrayList
, используя следующий синтаксис: myArrayList[n]
.
Я считаю, что мое понимание этого процесса неверно (и я не уверен, какой именно). Я думаю, что это потому, что когда я пытаюсь установить значения ArrayList
одним из следующих способов:
myArrayList[0] = someByteArrayValue
OR
myArrayList.add(0, someByteArrayValue)
Я получаю следующую ошибку:
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
Почему размер myArrayList
равен 0
?
Ни в коем случае я (намеренно или сознательно не звоню myArrayList.clear()
), поэтому я не уверен, каким образом размер когда-либо установлен на 0
.
Спасибо,
Адам