gpt4 book ai didi

scala - (重新)在scala中定义()

转载 作者:行者123 更新时间:2023-12-04 23:57:37 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How does Scala's apply() method magic work?

(3 个回答)


9年前关闭。




假设我在 scala 中有一个 MyList 类,其中一个列表作为私有(private)成员。是否可以为我的类定义“()”以在给出正索引的情况下返回预期的内容,并在负索引的情况下从结尾开始(就像在 python 中一样)?

最佳答案

这可以通过 apply 完成。方法:

class PythonicArray {
private val underlying = Array(1,2,3,4)

def apply(n: Int) = {
val i = if (n < 0) (underlying.length + n) else n
underlying(i)
}
}

关于scala - (重新)在scala中定义(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15203691/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com