【发布时间】:2020-07-27 19:37:59
【问题描述】:
我有列表,我需要检查它是否包含 2 个特定字符串。 我有以下代码并希望进一步优化它
fun isContentTVE_AVOD(subscriptionPlans: List<ContentDatum>): Boolean {
var tve = false
var avod = false
if (subscriptionPlans.size > 0) {
for (i in subscriptionPlans.indices) {
if (subscriptionPlans[i] != null &&
subscriptionPlans[i].planMonetizationModel != null) {
if (subscriptionPlans[i].planMonetizationModel.equals("TVE", ignoreCase = true)) tve = true
if (subscriptionPlans[i].planMonetizationModel.equals("AVOD", ignoreCase = true)) avod = true
}
}
}
return tve && avod
}
【问题讨论】:
-
您想优化代码的哪一方面?时间、空间、代码复杂度、开发时间……?请明确说明。甚至可能是premature optimization 的情况。另外我认为您应该考虑查看列表以外的其他数据结构。那是我的 2 克拉