Kotlin 运营商在,它,是,

Kotlin operators in, it, is,

我是Kotlin新手,我分不清这三个运算符,它们之间有什么关系吗?他们与 Java 相比如何?

不,它们之间没有直接联系,除了在 Kotlin 中是 2 个字母的关键字。

它们用于不同的事情:

  • in用于测试一个对象是否包含在另一个对象中(Java中contains()的语法糖):

    if (someObject in someList) …
    

    在遍历集合时也使用它(其中 Java 仅使用 :):

    for (item in someList) …
    

    并指定类型参数是逆变的(其中 Java 将使用 ? super):

    interface List<out E>
    
  • it 用在只接受一个参数的 lambda 表达式中,以一种简洁的方式引用参数,而不必给它一个名称(没有直接 Java 等效):

    someList.filter{ it < 10 }
    
  • is用于判断一个对象是否属于给定类型(与Java中的instanceof相同):

    if (s is String) …
    

正如@Adrian 所说,所有关键字都在 Kotlin reference 文档中进行了解释。