gpt4 book ai didi

java - 为什么 Android DecimalFormat 找到字符串值?

转载 作者:行者123 更新时间:2023-12-02 02:43:14 25 4
gpt4 key购买 nike

我在 Anroid Studio 中使用 DecimalFormat。我有一个 double 值,我想要十进制格式。但是,当我以十进制格式给出 double 值时;他们说:“找到字符串值”。但是,它是双重值。我尝试转换为字符串,但它不起作用。我能做什么?

   double lat = (latPoint * 180.0 / Math.PI);
DecimalFormat DF = new DecimalFormat("#.########");
Double latlast = DF.format(lat);

最佳答案

DF.format(lat) 返回一个 String,您无法将 Double 格式化为您想要的任何内容。
double 不能保存所有尾随零,例如:

System.out.println((double) 1.0000);  //Will print 1.0

要将其打印为您想要的任何内容,您必须将其打印为字符串:

System.out.println("1.0000"); //Will print 1.0000

这就是为什么 .format 返回 String 而不是 double 的原因。

将最后一行更改为:

字符串 latlast = DF.format(lat);

编辑:如果您想将小数位截断为 6 位,请尝试此操作。

double lat = (latPoint * 180.0 / Math.PI);
double latFloor = Math.floor(lat * 1000000) / 1000000; //6 decimal places

关于java - 为什么 Android DecimalFormat 找到字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57164887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com