我可以使用kotlin“也”功能来缩短代码吗? [关闭]

问题描述 投票:2回答:1

kotlin docs是否说过使用also()函数来减少代码行?我的意思是在lambda体中做一些不相关的工作而不使用it参数。

例如,而不是这样:

fun togglePeriod() {
    viewModel.togglePeriod()
    showStatistics()
}

我写过:

fun togglePeriod() = viewModel.togglePeriod().also { showStatistics() }
kotlin lambda readability kotlin-also
1个回答
3
投票

代码应该是可读的并表达意图。为减少行数而减少行数很少会导致可读性的提高。

如果切换一个句号应该导致显示统计数据,那么拥有一个单独的togglePeriod()方法体是完全合理的,它很好地显示了意图。 also()感觉不那么可读。

© www.soinside.com 2019 - 2024. All rights reserved.