Kotlin基础八之关键字’in’


使用in检查

  你可以使用in来检查一个值是否在一个区间内:

fun isLetter(c: Char) = c in 'a'..'z' || c in 'A'..'Z'

fun isNotDigit(c: Char) = c !in '0'..'9'

fun main(args: Array<String>) {
    println("a is letter?: ${isLetter('a')}")
    println("1 isn't Digit?: ${isNotDigit('1')}")
}
//result:
a is letter?: true
1 isn't Digit?: false

Process finished with exit code 0

  检查一个值是否在一个集合内:

 println("kotlin" in setOf("Java", "C++"))
 //false

  in的作用:

  • 指定在for(...)循环中迭代的对象
  • 用作中缀操作符检查一个值是否属于一个区间、一个集合或者其他定义了contains方法的实体
  • when表达式中用于上述目的
  • 将一个类型参数标记为逆变1

  1. 类型参数逆变:只可以被消费而不可以被生产。