違いは何であるvar
とval
Kotlinでは?
私はこのリンクを通過しました:
https://kotlinlang.org/docs/reference/properties.html
このリンクで述べたように:
読み取り専用のプロパティ宣言の完全な構文は、2つの点で変更可能なプロパティ宣言とは異なります。varではなくvalで始まり、セッターを許可していません。
しかし、直前にセッターを使用する例があります。
fun copyAddress(address: Address): Address {
val result = Address() // there's no 'new' keyword in Kotlin
result.name = address.name // accessors are called
result.street = address.street
// ...
return result
}
間の正確な違いは何ですかvar
とはval
?
なぜ両方が必要なのですか?
これはKotlinの変数の複製ではなく、Javaとは異なります。var対val?一般的なものだけでなく、ドキュメント内の特定の例に関連する疑問についても尋ねています。
result
の別のインスタンスを参照するように変更することはできませんが、それが参照するインスタンスはAddress
引き続き変更できます。あなたが持っていた場合、同じことがJavaにも当てはまりますfinal Address result = new Address();