Android Kotlin:无法重新分配LatLng';s纬度/经度
假设我有2个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类
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