如何在Kotlin中将CharArray转换为Array <char>

时间:2018-06-23 04:20:09

标签: kotlin

发生的情况是"mystring".toCharArray()返回了一个CharArray,但是我需要一个Array<Char>

  1. 为什么CharArray存在?背后的想法是什么?
  2. 如何将CharArray投射到Array<Char>

我找到了一种制作方法Array<Char>

"mystring".toCharArray().map { it }.toTypedArray()

但是还有其他方法吗?

2 个答案:

答案 0 :(得分:5)

对于问题的第一部分,请参考official language documentation的“基本类型”部分:

  

Kotlin还具有专门的类来表示原始类型的数组,而无需装箱:ByteArray,ShortArray,IntArray等。这些类与Array类没有继承关系,但是它们具有相同的方法和属性集。它们每个都具有对应的工厂功能:

对于问题的第二部分,看来您不需要map。您可以这样做:

"mystring".toCharArray().toTypedArray()

答案 1 :(得分:0)

另一种方法是将CharSequence映射到it,这将为您提供一个List<Char>,然后可以将其转换为所需的Array<Char>

"mystring".map { it }.toTypedArray()