我正在尝试将firstArray的前2个元素复制到secondArray。
var firstArray = arrayListOf(1,2,3,4)
var secondArray = firstArray.copyOfRange(0,1)
但是由于某种原因,我在copyOfRange中收到“未解决的引用”错误。
如果我为firstArray定义Array类型,则可以解决问题,但我不想这样做,因为将来它可以包含不同的变量
最佳答案
arrayListOf
函数返回ArrayList
。如果要使用此功能,则应在其上使用 subList
函数:
val firstList = arrayListOf(1, 2, 3, 4)
val secondList = firstList.subList(0, 1)
请注意,
subList
不会创建副本,您可以使用toList
调用进行复制,例如:val secondList = firstList.subList(0, 1).toList()
或显式调用
ArrayList
构造函数:val secondList = ArrayList(firstArray.subList(0,1))
如果要改用
Array
,请使用 arrayOf
,然后可以使用 copyOfRange
:val firstArray = arrayOf(1, 2, 3, 4)
val secondArray = firstArray.copyOfRange(0, 1)