MST

星途 面试题库

面试题:Kotlin集合的复杂过滤与映射操作

有一个包含多个`Person`对象的列表,`Person`类有`name`(字符串类型)、`age`(整型)和`hobbies`(字符串列表类型)属性。例如`data class Person(val name: String, val age: Int, val hobbies: List<String>)`,以及列表`val people = listOf(Person("Alice", 25, listOf("reading", "swimming")), Person("Bob", 30, listOf("dancing", "traveling")))`。请通过集合过滤与映射操作,返回一个新的列表,该列表中的元素为满足以下条件的`Person`对象的`name`属性:年龄大于25岁且其爱好列表中包含`"traveling"`。请编写完整的Kotlin代码实现此复杂操作。
49.1万 热度难度
编程语言Kotlin

知识考点

AI 面试

面试题答案

一键面试
data class Person(val name: String, val age: Int, val hobbies: List<String>)

fun main() {
    val people = listOf(
        Person("Alice", 25, listOf("reading", "swimming")),
        Person("Bob", 30, listOf("dancing", "traveling"))
    )

    val result = people.filter { it.age > 25 && it.hobbies.contains("traveling") }
        .map { it.name }

    println(result)
}