Size: a a a

2020 April 20

AN

Alexander Nozik in Kotlin JVM
ultra noise
я применяю это когда работаю с приходящей структурой, с JSON. Чтобы привести его к List<Map<*,*>> и проверить на not null значения ключей
Привести можно если дока гарантирует, что оно приведется. Что касается кючей, то можно использовать !!, если вы действительно уверены, что там нет нулов
источник

AL

Alexander Levin in Kotlin JVM
ultra noise
Господа, добрый день! Скажите пожалуйста, насколько вообще хороший тон использовать unchecked cast и !! ?  Мне кажется что это бомба замедленного действия, а !! вообще будет ломаться в рантайме
Абстрактно говоря - ситуации, когда это ок бывают, обе вещи скорее индикатор, что что-то *может* быть плохо, чем что что-то плохо.

Конкретно в вашей ситуации. Ну, вообще если у вас JSON, который вы не хотите приводить к каким-то типам, я бы рекомендовал работать собственно с JSON'ом (условно JsonArray из любой либы наверное в вашем случае)
источник

AN

Alexander Nozik in Kotlin JVM
Alexander Levin
Абстрактно говоря - ситуации, когда это ок бывают, обе вещи скорее индикатор, что что-то *может* быть плохо, чем что что-то плохо.

Конкретно в вашей ситуации. Ну, вообще если у вас JSON, который вы не хотите приводить к каким-то типам, я бы рекомендовал работать собственно с JSON'ом (условно JsonArray из любой либы наверное в вашем случае)
Некоторые либы возвращают Any. Полагаю, что проблема именно в этом.
источник

VP

Vladimir Petrakovich in Kotlin JVM
А кстати есть годные либы на котлине для работы с JSON/CBOR как с деревом?
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
А кстати есть годные либы на котлине для работы с JSON/CBOR как с деревом?
Так в Kotlinx-serialization встроенный билдер.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Так в Kotlinx-serialization встроенный билдер.
А вытаскивание значений оттуда тоже есть?
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
А вытаскивание значений оттуда тоже есть?
Да, разумеется. Там единственный "минус" в том, что дерево после билдера иммутабельное
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Да, разумеется. Там единственный "минус" в том, что дерево после билдера иммутабельное
Огонь, это же то, что нужно
источник

VP

Vladimir Petrakovich in Kotlin JVM
Ну то есть как по-другому то?)
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Огонь, это же то, что нужно
источник

VP

Vladimir Petrakovich in Kotlin JVM
Я правильно понимаю, что несмотря на Json повсюду, оно не прибито гвоздями именно к JSON?
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Я правильно понимаю, что несмотря на Json повсюду, оно не прибито гвоздями именно к JSON?
Не, это просто json-образное представление объектное
источник

VP

Vladimir Petrakovich in Kotlin JVM
Наступили на те же грабли, что и Jackson 😄
источник

VP

Vladimir Petrakovich in Kotlin JVM
Спасибо за наводку, посмотрю
источник

VP

Vladimir Petrakovich in Kotlin JVM
val, которые бросают исключения 🤔
Внезапно, однако
источник

AN

Alexander Nozik in Kotlin JVM
Если нужен абстрактный инструментарий, то welcome to https://github.com/mipt-npm/dataforge-core/tree/dev/dataforge-meta, только с документацией не очень. И там не совсем json-like в смысле массивов нод.
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Наступили на те же грабли, что и Jackson 😄
Да нет, там реально жсон для жсона. Для всего остального токенизаторы
источник
2020 April 21

АО

Алексей Овсянников in Kotlin JVM
Vladimir Petrakovich
val, которые бросают исключения 🤔
Внезапно, однако
Ну не очень, это же проперти
источник

АО

Алексей Овсянников in Kotlin JVM
Если не переменная в контексте
источник

AN

Alexander Nozik in Kotlin JVM
Алексей Овсянников
Ну не очень, это же проперти
Ну это зависит от того, что за исключение. Если это исключение класса проверки параметров функции, то почему бы и нет?
источник