Скажем, у меня есть класс данных:
data class Money(private var _amount: Int, private val currency: String) {
private var amount: Int = _amount
get() {
return if (field < 0) 0 else field
}
override fun toString(): String {
return "Money(amount=$amount, currency='$currency')"
}
}
Я хочу знать, что я должен передать в качестве параметра: var или val? Стоит ли добавлять приватную модификацию? В каком случае лучше всего? Потому что, когда я добавляю геттер, я должен изменить его на var, но, насколько я знаю, всегда лучше писать val на Kotlin?