KOTLIN比较n维数组

4
我需要对列表进行排序,这个列表内部还包含其他的列表嵌套。在Python中,我的代码如下所示:

a = sorted([[[1,2],[3,4]],[[1]]])

Kotlin 中是否有类似的东西?我找到了自定义比较器对象,但对于这样一个简单的任务来说真的很令人困惑。

1个回答

1
如果我正确理解了Python的sorted()方法,那么这应该会产生相同的行为:
fun main() {
    val a = listOf(listOf(listOf(1,2),listOf(4,3)), listOf(listOf(0,2,1)),listOf(listOf(1)))
    val b =a.sortedBy {it -> it.size}
    println(a)
    println(b)
}

输出:

[[[1, 2], [4, 3]], [[0, 2, 1]], [[1]]]
[[[0, 2, 1]], [[1]], [[1, 2], [4, 3]]]

Python 等效代码:

a = [[[1,2],[4,3]], [[0,2,1]] ,[[1]]]
b = sorted(a)
print(a)
print(b)

输出:

[[[1, 2], [4, 3]], [[0, 2, 1]], [[1]]]
[[[0, 2, 1]], [[1]], [[1, 2], [4, 3]]]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接