首页 > 解决方案 > 在 Kotlin 中访问数组的出站元素

问题描述

我在 JavaScript 中用于处理数组的大部分逻辑都取决于我是否能够使用索引。我正在过渡到 kotlin,所以我遇到了一些我使用的逻辑不适合 kotlin。

像初始化一个数组然后访问一个未定义的索引这样简单的事情似乎比我习惯的要复杂。

我知道有多种方法可以添加到 kotlin 上的列表和访问数组和东西。但我想知道的是我必须有哪些选项来制作大小不固定的数组,然后以不分青红皂白的顺序将元素添加到数组中。我上周刚参加了 udacity kotlin 新兵训练营,但在使用 javascript 中使用的索引时遇到了问题。

// JavaScript Code
var W = Array();
W[0] = 1
//Kotlin 
var W = arrayOf()
W[0] =1

索引出界异常

标签: javascriptkotlin

解决方案


如果您想将字符串转换为字节数组,Kotlin Std Lib 已经包含了一个扩展 fun

fun String.toByteArray(
    charset: Charset = Charsets.UTF_8
): ByteArray

// Example from Kotlin Docs
val charset = Charsets.UTF_8
val byteArray = "Hello".toByteArray(charset)
println(byteArray.contentToString()) // [72, 101, 108, 108, 111]
println(byteArray.toString(charset)) // Hello

推荐阅读