我想查一下, 如果我从URL获取lat和lng, 而那个URL,lat和lng被称为FLOAT。
在我自己的代码中,我将它们声明为字符串,
static final String KEY_LATITUDE = "latitude";
static final String KEY_LONGITUDE = "longitude";
当我将lat和lng传递给我的代码并将其显示为文本视图时,它将显示出来。 现在,如果我想将lat和lng的值传递给google map,我是否必须在代码中将它们声明为FLOAT,还是可以保留为字符串?
答案 0 :(得分:1)
如果要将字符串转换为float use:
float d = Float.parseFloat(KEY_LATITUDE);
这会将你的字符串转换为float并将其存储在'd'。
否则,如果您不想使用它们执行任何操作,那么您可以将其保留为String。
答案 1 :(得分:1)
您是否需要为此解析数据(例如,对浮点值执行一些逻辑)?如果您只想显示纬度和经度值,则无需将它们转换为浮点数。
textView.setText(longitudeString);
完全有效。
答案 2 :(得分:1)
这取决于。如果要传递以浮点数据类型存储它们,则必须这样做。象 -
float aFloatValue = Float.parseFloat("100"); // 100 here is a string. It can be your lat or lng
相反的是 -
String aStringValue = Float.toString(100f); // 100 here is a float converting to a string
答案 3 :(得分:1)
如果您只想显示lat和long,请将其保留为String。 如果你想做一些计算,比如最短的路线或某事,请把它保持为双倍。
对于我在java中的编码风格,通常我不使用float,但使用double。 因为当你计算时,它会转换为double,而Bigdecimal会使用double,而且......
但是如果你能确保浮动足够精确,那么浮动可以为你节省一点点内存。
我正在做的是建立一些网络应用程序,所以双倍和浮动不会产生巨大的差异。如果您正在使用移动应用程序或其他东西,请考虑使用float