Kotlin: невозможно переназначить широту / долготу LatLng - PullRequest
1 голос
/ 16 мая 2019

Допустим, у меня есть 2 LatLng переменные.

lateinit var mLatLng1:LatLng
lateinit var mLatLng2:LatLng

Допустим, они оба уже были инициализированы для некоторых значений.

Если я попробую это:

mLatLng1 = mLatLng2

Работает как положено.Однако, когда я пытаюсь это сделать:

mLatLng1.latitude = mLatLng2.latitude

я получаю сообщение об ошибке:

Val не может быть переназначен

Если моя переменная mLatLng1 имеет значениетипа var, тогда почему я получаю эту ошибку?

1 Ответ

3 голосов
/ 16 мая 2019

Если моя переменная mLatLng1 имеет тип var, то почему я получаю эту ошибку?

Потому что вы не назначаете что-то для mLatLng1. Это было бы:

mLatLng1 = LatLng(45.0, 123.0)

Вместо этого вы делаете это:

mLatLng1.latitude = mLatLng2.latitude

Это попытка обновить поле внутри mLatLng1. И, если ваш объект это LatLng, эти поля равны final, что в Kotlin соответствует val.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...