kotlin 习惯用法转载记录

1.创建 DTOs

data class Customer(val name: String, val email: String)
  • 所有属性的 getters (对于 var 定义的还有 setters)

  • equals()

  • hashCode()

  • toString()

  • copy()

2.函数的默认参数

fun foo(a: Int = 0, b: String = "") { …… }

过滤 list

val positives = list.filter { x -> x > 0 }  或者 val positives = list.filter { it > 0 }

3.检测元素是否存在于集合中

if ("john@example.com" in emailsList) { …… }

if ("jane@example.com" !in emailsList) { …… }

4.字符串内插

println("Name $name")

5.延迟属性

val p: String by lazy {
    // 计算该字符串
}

6.创建单例

object Resource {
    val name = "Name"
}

7.If not null 缩写

val files = File("Test").listFiles()

println(files?.size)

8.If not null and else 缩写

val files = File("Test").listFiles()

println(files?.size ?: "empty")

9.if null 执行一个语句

val values = ……
val email = values["email"] ?: throw IllegalStateException("Email is missing!")

10.使用可空布尔

val b: Boolean? = ……
if (b == true) {
    ……
} else {
    // `b` 是 false 或者 null
}

11.TODO():将代码标记为不完整

Kotlin 的标准库有一个 TODO() 函数,该函数总是抛出一个 NotImplementedError。 其返回类型为 Nothing,因此无论预期类型是什么都可以使用它。 还有一个接受原因参数的重载:

fun calcTaxes(): BigDecimal = TODO("Waiting for feedback from accounting")

更多kotlin代码用法习惯,可以参考*kotlin语言中文网*

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值