kotlin in操作符

2018-09-18  本文已影响0人  请输入妮称

in 操作符大概有两种使用场景

  1. for循环
for (i in 10..100){
        println(i)
    }

in操作符所作用的对象的条件:只要实现operator修饰的iterator方法(该iterator方法返回Iterator对象)或者实现Iterator接口即可

fun main(args: Array<String>) {
    for (i in OperateIn()){
        println(true)
    }    
    for (i in OperateIn2()){
        println(true)
    }
}

class OperateIn:Iterator<String>{
    override fun hasNext(): Boolean {
        TODO()
    }

    override fun next(): String {
        TODO()
    }
}

class OperateIn2{
    public operator fun iterator(): Iterator<String>{
        TODO()
    }
}

2.判断是否在区间中

    if (1 in 10..11){
        println(true)
    }

in操作符所作用的对象的条件:只要实现operator修饰的contains方法即可

fun main(args: Array<String>) {
    if (1 in OperateIn()){
        println(true)
    }
}

class OperateIn{
    public operator fun contains(value: Int): Boolean = true
}
上一篇下一篇

猜你喜欢

热点阅读