在Kotlin中,修改List.get
的行为的惯用方式是什么?调用get(-1)
返回列表中的最后一个元素?修改Kotlin中的List.get行为
我试图扩展:
operator fun <T> List<T>.get(index: Int): T {
return this[if (index < 0) size + index else index]
}
但可根据需要它没有表现,而我得到了警告
scratch.kts:3:26: warning: extension is shadowed by a member: public abstract operator fun get(index: Int): T
operator fun <T> List<T>.get(index: Int): T {
^
我认为你的意思'返回此[IF(指数<0)大小+指数别人指数]' –
这有什么错'list.last'?清楚地说明你在做什么,并且不需要基于索引的访问。 –