我有实用程序文件Utility.kt
在这里,我定义了一些常量,例如
val DATE_FORMAT = DateTimeFormatter.ofPattern("yyyyMMdd")
const val UTC_TIMEZONE = "UTC"
Run Code Online (Sandbox Code Playgroud)
现在我需要用 2 个元素定义列表。我找不到以静态方式编写它的方法。我需要类似的东西
val DEFAULT_LIST = ArrayList<MyObj>()
val one = MyObj("one")
val two = MyObj("two")
DEFAULT_LIST.addAll(one,two)
Run Code Online (Sandbox Code Playgroud)
即只创建一次列表和对象。我可以使用伴侣对象。但现在我只使用没有类的文件。
是否可以?
最通用的解决方案是调用run,它不接受任何参数并产生作为块结果的值。对您的代码进行最少的更改:
val DEFAULT_LIST = run {
val it = ArrayList<MyObj>()
val one = MyObj("one")
val two = MyObj("two")
it.add(one)
it.add(two)
it
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
343 次 |
| 最近记录: |