问题描述
我有一个自定义对象名称列表,名称为Days
,其中包含3个属性key
,value
和isChecked
。
以下是天数列表:
listof(
Days("monday","9:30",false),Days("Tuesday",true)
)
输出:[Days(key=Monday,value=9:30 AM,isChecked=true),Days(key=Tuesday,isChecked=true)]
数据类:
data class Days(
val key: String,var value: String,var isChecked:Boolean
)
现在,我不想打印每个对象的最后一个属性,即isChecked=true
或isChecked=false
..我该如何实现呢?我尝试了filter
和map
的lambda,但是没有得到想要的结果。
预期o / p:[Days(key=Monday,value=9:30 AM),value=9:30 AM)]
解决方法
您必须自己编写list.map { "Days(key=${it.key},value=${it.value})" }
.also { println(it) }
的替代版本。
let arrDepartment = []
this.DepartmentIR.forEach(e=>{
arrDepartment.push(e.Department)
})
this.RisksIndicatorsIR.forEach(e=>{
let x = {...e}
x.Departments = arrDepartment
console.log(x)
})
})
,
如果要更改转换为字符串时对象的显示方式,请覆盖toString()
函数:
data class Days(
val key: String,var value: String,var isChecked: Boolean
) {
override fun toString(): String = "Days(key=$key,value=$value)"
}
fun main() {
val days = listOf(
Days("monday","9:30",false),Days("Tuesday",true)
)
for (item in days) println(item)
}
输出:
Days(key=monday,value=9:30)
Days(key=Tuesday,value=9:30)