Android Kotlin:无法重新分配LatLng';s纬度/经度

Android Kotlin:无法重新分配LatLng';s纬度/经度,android,kotlin,geolocation,Android,Kotlin,Geolocation,假设我有2个LatLng变量 lateinit var mLatLng1:LatLng lateinit var mLatLng2:LatLng 假设它们都已初始化为某些值 如果我尝试这样做: mLatLng1 = mLatLng2 它按预期工作。但是,当我尝试这一点时: mLatLng1.latitude = mLatLng2.latitude 我得到一个错误: 无法重新分配Val 如果我的mLatLng1变量的类型为var,那么为什么会出现此错误 如果我的mLatLng1变量是var类

假设我有2个
LatLng
变量

lateinit var mLatLng1:LatLng
lateinit var mLatLng2:LatLng
假设它们都已初始化为某些值

如果我尝试这样做:

mLatLng1 = mLatLng2
它按预期工作。但是,当我尝试这一点时:

mLatLng1.latitude = mLatLng2.latitude
我得到一个错误:

无法重新分配Val

如果我的
mLatLng1
变量的类型为
var
,那么为什么会出现此错误

如果我的mLatLng1变量是var类型,那么为什么会出现此错误

因为您没有将某些内容分配给
mLatLng1
。这将是:

mLatLng1 = LatLng(45.0, 123.0)
相反,您正在这样做:

mLatLng1.latitude = mLatLng2.latitude
这正试图更新
mLatLng1
中的字段。如果对象是,则这些字段是
final
,在Kotlin中映射为
val

如果我的mLatLng1变量是var类型,那么为什么会出现此错误

因为您没有将某些内容分配给
mLatLng1
。这将是:

mLatLng1 = LatLng(45.0, 123.0)
相反,您正在这样做:

mLatLng1.latitude = mLatLng2.latitude
这正试图更新
mLatLng1
中的字段。如果对象是,则这些字段是
final
,在Kotlin中映射为
val