我在将位置模型转换为JSON字符串时遇到了一个问题。
当我尝试用Gson转换为字符串时,我失去了经纬度字段。
...
location.lat = 40.00000 // example
location.lng = 29.00000 // example
val jsonString = Gson().toJson(location)
val newLocation = Gson().fromJson(jsonString, Location::class.java)
Log.d(">>>>>>", "location lat is ${newLocation.lat} location lng is ${newLocation.lng} )
结果是0.0和0.0。
问题出在哪里?
更新
我知道使用自定义类可以处理这个问题,但我很好奇为什么Location类不能工作。
使用kotlin数据类,你的代码应该正常工作。
data class Location(val lat: Double, val lng: Double)
val location = Location(40.0,29.0)
val locationJson = Gson().toJson(location)
val newLocation = Gson().fromJson(locationJson, Location::class.java)
Log.d(">>>>>>", "${newLocation.lat} : ${newLocation.lng}")