我正在寻找一种方法,将.map函数的返回类型从列表更改为JsonArray(google gson)。

例如

    val a = listOf("Sui", "Pran").map {
        "Hello $it"
    }


此代码返回List<String>,但我想要的是,它返回JsonArray(google gson)。我不想foreach并一一添加,使用lambda, .map etc...会很好

谢谢

最佳答案

Gson似乎缺乏执行此操作的内置方法。您可以编写自己的函数来做到这一点:

fun Iterable<String>.toJsonArray() =
    map { JsonPrimitive(it) }.fold(JsonArray()) { acc, el -> acc.apply { add(el) } }

07-24 09:44
查看更多