这个写法能不能更简略一点?


#1
if (content.child?.list == null || content.child?.list!!.isEmpty()) {
    println("list is empty")
}

这个写法能不能更简略一点?


#2

isNullOrEmpty ?


#3

isNullOrEmpty 是String的扩展方法不是list的


#4

升级到1.3就支持集合了 https://todd.ginsberg.com/post/kotlin-1.3-features/


#5

自定义扩展一个函数

 inline infix fun <T : Any> Collection<T>?.emptyRun(block: (Collection<T>?) -> Unit) {
        if (this == null || this.isEmpty()) {
            block(this)
        }
  }

使用的时候直接这样

     content.child?.list.emptyRun {
           println("list is empty")
      }

#7

嗯 已经尝试 灰常好用


#8

1.3 正式版本已经发布了 里面有 isNullOrEmpty 可以实现


#9

即使不用 1.3,也可以简化:

if (content.child?.list?.isEmpty()?:true) {
    println("list is empty")
}

#10

京ICP备16022265号-2 Kotlin China 2017 - 2018
本站由腾讯云提供计算服务