итерационный список классов данных, не работающих должным образом - PullRequest
0 голосов
/ 14 мая 2019

У меня есть список классов данных, которые я пытаюсь перебрать.Вот класс данных и место его создания.

data class BgaResponse(val columnName: String, val restricted: Boolean, val predictionValue: Double)

val bgaResponse: List<BgaResponse>? = callBgaEndpoint(bgaRequest)

печать bgaResponses показывает это:

[{columnName=col1, restricted=false, predictionValue=0.9963}, {columnName=not_here, restricted=false, predictionValue=0.995941}]

Я впервые попробовал использовать forEach:

bgaResponse?.forEach {
            println(it)
        }

это печатаетничего такого.Затем я попытался получить доступ к каждому элементу по индексу:

for(i in 0 until bgaResponse!!.size) {
            println(bgaResponse[i])
        }

, это печатает каждый элемент, как и ожидалось:

{columnName=col1, restricted=false, predictionValue=0.9963}
{columnName=not_here, restricted=false, predictionValue=0.995941}

Я попытался напечатать bgaResponse[i].columnName, но ничего не печатается снова.Теперь это не имеет никакого смысла.

Наконец я пытаюсь:

for(i in 0 until bgaResponse!!.size) {
            val x: BgaResponse= bgaResponse[i]
        }

это должно сработать, моя IDE говорит мне, что bgaResponse [i] является BgaResponse.Это возвращает ошибку:

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to com.package.something.placeholder.model.BgaResponse

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...