我只想保留对象的几个属性。假设我有一个对象列表,List<Employee>和Employee数据类有大约10个属性。从列表中,我只想保留3-4个属性,并过滤掉其余的。如何在Java或Kotlin中实现?提亚
发布于 2018-09-07 11:12:35
为您的单独用例创建单独的数据类:
data class Employee(val id: Long, val name: String, val age: Int, val position: String)
data class PartialEmployee(val id: Long, val name: String)然后,您可以根据需要在这两个之间执行map:
val employees: List<Employee> = ...
val partialEmployees: List<PartialEmployee> = employees.map {
PartialEmployee(
id = it.id,
name = it.name
)
}发布于 2018-09-07 11:04:34
make Employee扩展了另一个类,将您想要保留的属性放在超类中。创建超类列表而不是List<Employee>。例如:
calss A
{
int propToKeep;
}
class B extends A
{
@Override
int propToKeep;
int propToDrop;
}然后,您可以从一堆B中创建一个List<A>
https://stackoverflow.com/questions/52214666
复制相似问题