当前位置: 首页 > 知识库问答 >
问题:

如何在Kotlin中将字符串数组转换为Int数组?

何玉韵
2023-03-14

Kotlin有许多速记和有趣的特性。所以,我想知道是否有一些快捷的方法可以将字符串数组转换为整数数组。与Python中的此代码类似:

results = [int(i) for i in results]

共有3个答案

贡斌
2023-03-14

如果您试图转换实现随机访问的列表结构(如数组列表,或数组),可以使用此版本以获得更好的性能:

IntArray(strings.size) { strings[it].toInt() }

此版本编译为基本的for循环int[]

int size = strings.size();
int[] result = new int[size];
int index = 0;

for(int newLength = result.length; index < newLength; ++index) {
    String numberRaw = strings.get(index);
    int parsedNumber = Integer.parseInt(numberRaw);
    result[index] = parsedNumber;
}

庞书
2023-03-14

我会用一些简单的方法,比如

val strings = arrayOf("1", "2", "3")
val ints = ints.map { it.toInt() }.toTypedArray()

或者,如果您喜欢扩展:

fun Array<String>.asInts() = this.map { it.toInt() }.toTypedArray()

strings.asInts()
海鸣
2023-03-14

您可以使用。映射{…} 。toInt()。toIntOrNull()

val result = strings.map { it.toInt() }

只有结果不是数组而是列表。最好在非性能关键代码中使用数组上的列表,请参见差异。

如果需要数组,请添加。toTypedArray()。toIntArray()

 类似资料:
  • 问题内容: 退货 我需要这些值是int类型而不是string类型。有没有比用foreach遍历数组并将每个字符串转换为int更好的方法呢? 问题答案: 您可以通过以下代码来实现,

  • 我需要转换存储的字符串, 这里myVar="23,45,64,78"; 我想把它转换成如下的数组, 我怎样才能实现这一点?谢谢

  • 问题内容: 如何在php中转换数组中的字符串 应该是这样的 的 将字符串拆分为3个字符的单词,但我想在数组中的空格后转换字符串。 问题答案:

  • 问题内容: 我有一个; 我想转换为字符串数组。我该怎么做?有内置的Java函数吗?可以手动完成,但是我正在搜索Java内置函数。 我想要一个数组,其中字符串的每个字符都是一个字符串。像char’n’现在将是存储在数组中的字符串“ n”。 问题答案: 要开始你的作业,请在正则表达式上拆分字符串,该表达式可以为空字符串: 产生数组: 留空的第一条目留给读者练习:-) 注意:在Java 8中,不再包含空

  • 问题内容: 我知道如何以编程方式执行此操作,但是我敢肯定有一种内置方法… 我使用的每种语言都有一组对象的默认文本表示形式,当您尝试将Array与字符串连接起来或将其传递给print()函数时,它会吐出。Apple的Swift语言是否可以有一种轻松地将数组转换为字符串的内置方法,还是在对数组进行字符串化时始终必须明确? 问题答案: 如果数组包含字符串,则可以使用的方法: 在 Swift 2中 : 如

  • 我使用过的每种语言都有某种默认的文本表示,用于对象集合,当您试图将数组与字符串连接起来,或者将其传递给print()函数等时,它会吐出这些对象集合。苹果的Swift语言是否有一种内置的方式可以轻松地将数组转换为字符串,或者我们在字符串化数组时总是必须显式地表示吗?