【发布时间】:2020-05-05 18:00:02
【问题描述】:
这可能只是 Use of Boolean? in if expression 的复制品,但我对 Kotlin 的了解还不够多,无法知道它是否...
我想测试body : String? 是否包含expected : String 作为子字符串。 (如果body 是null,那么它不包含子字符串。)我发现我可以这样写我的条件:
if (body?.contains(expected) == true) {
succeed()
}
或者像这样:
if (body?.contains(expected) != true) {
fail()
}
(其中body?.contains(expected) 是Boolean? 类型的表达式),但这真的是编写这种条件的最佳 或最惯用 方式吗?有没有更直观的替代方案(可能使用String 的其他成员函数)?
【问题讨论】:
-
我之所以这么问,是因为有一些像
listOfNotNull这样的小成语在我看来是可读性的重大突破。 -
这两个选项都没有问题,但是如果您正在寻找
body确实包含expected的情况,第一个选项看起来更具可读性 -
我同意@VitaliiIlchenko,我使用并看到第一个通常是因为它比第二个更具可读性。
标签: kotlin readability