Size: a a a

2020 February 20

FS

Fail Shahmaev in KotlinLangRu
Нашел
источник

FS

Fail Shahmaev in KotlinLangRu
В общем вот так должно быть:
val request = json {
   "name" to name
   "apartment_ids" to jsonArray {
        +"dddd"
   }
}
источник

MG

Mikhail Guryev in KotlinLangRu
хм, я сейчас склонировал репу
источник

FS

Fail Shahmaev in KotlinLangRu
Тогда массив создается и в моем случае записывается "dddd"
источник

FS

Fail Shahmaev in KotlinLangRu
OMG, не просто это было )))
источник

MG

Mikhail Guryev in KotlinLangRu
+flats
источник

MG

Mikhail Guryev in KotlinLangRu
ты не пробовал?)
источник

FS

Fail Shahmaev in KotlinLangRu
неа, так не пойдет
источник

FS

Fail Shahmaev in KotlinLangRu
у них нет унарной операции к массиву
источник

MG

Mikhail Guryev in KotlinLangRu
странно, что нельзя просто в JsonArray преобразовать
источник

FS

Fail Shahmaev in KotlinLangRu
Ух, в общем элегантное решение получилось вот таким:
val request = json {
   "name" to name
   "apartment_ids" to jsonArray {
        flats.forEach {
            +it
        }
   }
}
источник

MG

Mikhail Guryev in KotlinLangRu
элегантность так себе, на мой взгляд)
источник

FS

Fail Shahmaev in KotlinLangRu
Ну... рад увидеть что-то получше )
источник

MG

Mikhail Guryev in KotlinLangRu
public fun Collection<String?>.toJsonArray(): JsonArray {
   return JsonArray(map { JsonPrimitive(it) })
}
вот расширение :) юзать так:
val request = json {
   "name" to name
   "apartment_ids" to flats.toJsonArray()
   }
}
источник

MG

Mikhail Guryev in KotlinLangRu
ты писал, "можно преобразовать, но как-то не очень"
но тут в любом случае нужно преобразовывать

можешь тоже самое сделать и для Collection<Number?>,Collection<Boolean?>
источник