我有一个数据类Worker,我想创建一个新的Worker数据并在满足某些条件时添加到列表中。
这是我创建新 worker 的方法,

var workerList = arrayListOf<Worker>()

when(hirePosition){
  android -> Worker(nameA, ageA)
  ios ->  Worker(nameB, ageB)
} 

我知道可以使用workerList.add()方法将数据添加到列表中,但是我不知道从when条件返回时如何制作数据。
很抱歉,我很抱歉,不能确定这是否是此情况下编码的正确方法,需要任何建议并事先感谢。

最佳答案

详尽的when必须具有else分支

when(hirePosition){
  android -> Worker(nameA, ageA)
  ios ->  Worker(nameB, ageB)
  else -> null
}?.let { workerList.add(it) }

10-07 19:28
查看更多