我编写了这个函数来从db加载数据,异步修改数据并返回新的数据。它看起来很好,但是由于我对柯尔丁还不熟悉,我想问一下,按照行业标准,这个代码是否可以。
override fun update(resourceCommand: UpdateResourceCommand): List<Resource> = runBlocking {
val resources = resourceCommand.resources.map {
async {
val resource = load(it)
resource.isProtected = it.isProtected
resource
}
}.awaitAll()
return@runBlocking resources
}提前谢谢你
发布于 2022-08-23 09:59:23
这个问题有点主观,但我的看法是,创建一个变量只在后面返回并不是真正的惯用。我相信你的代码可以变得更紧凑
override fun update(resourceCommand: UpdateResourceCommand): List<Resource> = runBlocking {
resourceCommand.resources.map {
async {
load(it).apply {
isProtected = it.isProtected
}
}
}.awaitAll()
}它是更好还是更符合行业标准,我不知道,是主观的。但我就是这么做的。
https://stackoverflow.com/questions/73455047
复制相似问题