之前使用operator来实现自定义操作符 比如+ -这些在创建方法时需要operator修饰方法 但是这段代码
class MyIntList {
private val list = ArrayList<Int>()
fun add(i: Int) {
list.add(i)
}
fun remove(index: Int) {
list.remove(index)
}
operator fun iterator(): MyIterator {
return MyIterator(list.iterator())
}
}
class MyIterator(val iterator: Iterator<Int>) {
operator fun next(): Int {
return iterator.next()
}
operator fun hasNext(): Boolean {
return iterator.hasNext()
}
next 和hasNext用operator 是什么作用 iterator()方法用operator修饰 又是什么作用呢 这个操作符到底什么时候使用 什么场景呢