Как я могу вернуть индекс типа T в коллекции на основе некоторых критериев? - PullRequest
0 голосов
/ 04 октября 2018

В Kotlin есть несколько классных функций для коллекций.Однако я столкнулся с проблемой, решение которой мне не очевидно.

У меня есть Список объектов.Эти объекты имеют поле идентификатора, которое совпадает с базой данных SQLite.Операции SQL выполняются с базой данных, и создается новый список. Как найти индекс элемента из нового списка на основе поля «ID» (или любого другого поля в этом отношении)?

функция Collection.find {} возвращаетобъект, но не индекс.

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

indexOfFirst может найти индекс первого элемента коллекции, который удовлетворяет указанному предикату.

0 голосов
/ 05 октября 2018

У нас есть база данных SQlite, к которой выполняется вызов для получения parentList. Мы можем получить элементы в ArrayList с помощью кода такого типа

    fun onDoIt(view: View){

    initDB()


    for (t in 0..X-1) {
        var N:String = parentList[t].dept
        // NOTE two syntax here [t] and get(t)
        if(t == 1){
            var B:String = parentList[0].idD.toString()
            println("$$$$$$$$$$$$$$$$$$$$$ ====== "+B)
        }
        var I:String = parentList.get(t).idD.toString()
        println("################### id "+I+" for "+N)
    }

}

private fun initDB() {
    parentList = db.querySPDept()
    if (parentList.isEmpty()) {
        title = "No Records in DB"
    } else {
        X = parentList.size
        println("**************************************** SIZE " + X)
        title = "SP View Activity"
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...