我在firebase中保存了坐标,例如:
lat: 19535037.77154548
lng: -4578925.543895042
但是当我尝试将它们加载到数字中时,它会将其更改为1.953503777154548E7
static double homeLat;
Ref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
homeLat = (double) snapshot.child("lat").getValue();
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
我已经尝试将它从double更改为int和其他各种,但它出错并告诉我它需要加倍。然而,双倍更改小数位,并将E7添加到最后。
我不会撒谎,我对java很新,不得不分配数字类型。但是我现在已经阅读了一段时间并且没有太多运气,为什么我会遇到这个问题。
答案 0 :(得分:1)
这是相同的值,但后来使用科学记数法。当您需要显示它时,您必须将其转换为首选输出格式(您不需要编码)。