我想获得如下索引列表。
val a = booleanArrayOf(true,false,true,false)
在上面的代码中,True数字是2。-> indexList = {0,2}如何在Kotlin中获取indexList。
发布于 2018-06-07 09:08:02
您可以使用mapIndexed()
来获取每个元素的索引和值,将其转换为索引或null,然后删除空值...
val b: List<Int> = a.mapIndexed { i, b -> if (b) i else null }.filterNotNull().toList()
另一种方法是使用withIndex()
函数,筛选为真的值,并将结果对映射到索引值。这可能会更清楚一些。
val c: List<Int> = a.withIndex().filter { it.value }.map { it.index }
https://stackoverflow.com/questions/50731464
复制相似问题