KOTLIN/JAVA 从对象列表中删除对象的某些属性

hac*_*ack 4 java java-8 kotlin

我只想保留对象的一些属性。假设我有对象列表,List<Employee>并且 Employee 数据类有大约 10 个属性。从列表中,我只想保留 3-4 个属性并过滤掉其余属性。在 Java 或 Kotlin 中如何实现这一点?TIA

zsm*_*b13 5

为您的单独用例创建单独的数据类:

data class Employee(val id: Long, val name: String, val age: Int, val position: String)
data class PartialEmployee(val id: Long, val name: String)
Run Code Online (Sandbox Code Playgroud)

然后您可以map根据需要在这些之间:

val employees: List<Employee> = ...
val partialEmployees: List<PartialEmployee> = employees.map {
    PartialEmployee(
            id = it.id,
            name = it.name
    )
}
Run Code Online (Sandbox Code Playgroud)