如何在Kotlin的列表中创建每两个项目的地图?

The*_*Guy 7 kotlin

我正在尝试创建一个从列表中获取两个值的映射,并使用第一个值作为键,第二个键作为值,但我无法弄清楚如何执行此操作.

假设我有一个如下列表.

-e,normal,-t,flat,-s,test

如何从该列表创建如下所示的地图?

-eto normal,-tto flat,-stotest

zsm*_*b13 17

如果要使用内置函数,chunked可以快速执行此操作:

val arguments = listOf("-e", "normal", "-t", "flat", "-s", "test")

val map: Map<String, String> = arguments
        .chunked(2) { (switch, value) -> switch to value }
        .toMap()

println(map) // {-e=normal, -t=flat, -s=test}
Run Code Online (Sandbox Code Playgroud)