首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >科特林。如何声明常数?

科特林。如何声明常数?
EN

Stack Overflow用户
提问于 2022-03-20 20:50:38
回答 3查看 660关注 0票数 2

我有类,在主构造函数中有一些字段:

代码语言:javascript
复制
class SomeData(val counter: Int...) { // some logic}

我需要建立一个常数。我通常这样做:

代码语言:javascript
复制
 companion object {
     private const val MAX_VALUE = 1000
 }

但是在我的例子中,要声明常量,我需要使用类SomeData中的一个字段。但是要从counter类访问字段SomeData,我需要创建该类的一个实例,然后访问该字段。

这样做是正常的做法吗?

还是最好在类中声明这个常量:

代码语言:javascript
复制
private val MAX_VALUE = counter/ 2

但在这种情况下,Android警告我:

私有属性名'MAX_VALUE‘不应在中间或结尾包含下划线

我该如何声明一个常数?

EN

Stack Overflow用户

发布于 2022-03-21 07:41:26

常数是在执行过程中从未改变过的默认值,它从来不依赖于任何其他值。您可以创建如下所示

companion object { private const val CONSTAN_NAME = "value" }

这在本质上是不可变的&通过这样声明,您可以告诉编译器,这是一个内联常量&它将在运行时直接替换为值。所以优化的方式创造常数。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71550537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档