Kotlin学习笔记(二十三)迭代列表

class MyIterator(val iterator: Iterator<Int>){ //自定义迭代器
    operator fun next(): Int { //下一个
        return iterator.next()
    }

    operator fun hasNext(): Boolean { //判断是否有下一个
        return iterator.hasNext()
    }
}

class MyIntList { //自定义列表
    private val list = ArrayList<Int>()

    fun add(int: Int) { //添加到列表
        list.add(int)
    }

    fun remove(int: Int) { //从列表中移除
        list.remove(int)
    }

    operator fun iterator(): MyIterator { //迭代列表
        return MyIterator(list.iterator())
    }
}

fun main(args: Array<String>) {
    val list = MyIntList()
    list.add(1)
    list.add(2)
    list.add(3)

    for (i in list) {
        println(i)
    }
}
运行结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容