gpt4 book ai didi

Scala:编译时间常数

转载 作者:行者123 更新时间:2023-12-04 16:40:29 25 4
gpt4 key购买 nike

您如何在Scala中声明编译时间常数?在C#中,如果您声明

const int myConst = 5 * 5;

myConst内联为文字25。是:
final val myConst = 5 * 5

等效还是有其他机制/语法?

最佳答案

是的,final val是正确的语法,并带有Daniel's caveats。但是,在适当的Scala样式中,您的常数应为驼峰式大写字母。

如果要在模式匹配中使用常量,则以大写字母开头非常重要。第一个字母是Scala编译器如何区分常量模式和可变模式。参见Programming in Scala的15.2节。

如果val或单例对象不是以大写字母开头,则要将其用作匹配模式,必须将其括在反引号(``)中

x match {
case Something => // tries to match against a value named Something
case `other` => // tries to match against a value named other
case other => // binds match value to a variable named other
}

关于Scala:编译时间常数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11195171/

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