有没有办法在通过构造函数传递值后保留数据?
Is there a way to keep data after passing the value through constructor?
我有一个 class 作为参数获取数字值。在那个 class 里面,我有一个列表,假设每次创建 class 的实例时添加这些数字。如何让它在 Kotlin 中工作?
class MyClass internal constructor(
private val number: Int
){
private val listOfNumbers = mutableListOf<Int>()
init {
listOfNumbers.add(number)// So here it suppose to add all numbers
}
或者有更好的方法?
现在每个实例都有自己的listOfNumbers
。
通过将列表放在 companion object
中,将只有一个,在所有实例之间共享:
companion object {
private val listOfNumbers = mutableListOf<Int>()
}
private val listOfNumbers: List<Integer> = listOf()
class Myclass {
init {
listOfNumbers.add(number)// So here it suppose to add all numbers
}
}
listOfnumbers 将被共享,但只能在此文件中访问。
我有一个 class 作为参数获取数字值。在那个 class 里面,我有一个列表,假设每次创建 class 的实例时添加这些数字。如何让它在 Kotlin 中工作?
class MyClass internal constructor(
private val number: Int
){
private val listOfNumbers = mutableListOf<Int>()
init {
listOfNumbers.add(number)// So here it suppose to add all numbers
}
或者有更好的方法?
现在每个实例都有自己的listOfNumbers
。
通过将列表放在 companion object
中,将只有一个,在所有实例之间共享:
companion object {
private val listOfNumbers = mutableListOf<Int>()
}
private val listOfNumbers: List<Integer> = listOf()
class Myclass {
init {
listOfNumbers.add(number)// So here it suppose to add all numbers
}
}
listOfnumbers 将被共享,但只能在此文件中访问。