首页 > 解决方案 > 旋转 kotlin 数组

问题描述

假设我有一个类似的数组1 2 3 4 5,我想将它向左旋转n并得到一个新的。

例如,上述数组的 2 次旋转将导致3 4 5 1 2. 我没有找到任何扩展功能来做到这一点。

标签: arrayskotlin

解决方案


您可以使用内置的 javaCollections.rotate方法,但您需要先将数组转换为列表:

val arr = intArrayOf(1, 2, 3, 4, 5)
val list = arr.toList()
Collections.rotate(list, -2)
println(list.toIntArray().joinToString())

输出

3, 4, 5, 1, 2

推荐阅读