侧边栏壁纸
博主头像
Stars-One的杂货小窝博主等级

所有的创作都是有价值的

  • 累计撰写 276 篇文章
  • 累计创建 46 个标签
  • 累计收到 27 条评论

目 录CONTENT

文章目录

Kotlin 语法糖(对象不为空返回自身,为空返回其他)

Stars-one
2023-06-16 / 0 评论 / 0 点赞 / 242 阅读 / 2208 字

开发中,经常会有这样逻辑:

判断对象如果不为空,则取对象本身;
为空,则得到其他对象;

然后每次写个if还是有些啰嗦,可以使用kotlin的语法糖

可空对象使用?:

如果是可空对象,可以使用?:来实现

原来逻辑:

var str :String?=null

val result = if (str==null) {
	"空数据"
} else {
	str
}

改造后:

var str :String?=null
val result = str?:"空数据"

扩展方法

kotlin提供了两个扩展方法

  • ifBlank
  • ifEmpty

比如说一个列表List对象

原逻辑:

val list = arrayListOf<String>()
val result = if (list.isEmpty()) {
	arrayListOf("空数据")
} else {
	list
}

改造后:

val list = arrayListOf<String>()
val result =str.ifEmpty { 
	arrayListOf<String>("空数据")
}

同理,ifBlank也是一样的用法

val str =""
val result =str.ifBlank { 
	"空数据"
}
0

评论区