当前位置: 首页 > 知识库问答 >
问题:

如何获得距离的结果小数点后的两个值

雍兴修
2023-03-14

计算两个地方之间的距离;当您知道java中的经度和纬度时,使用两个lat和longi也可以使用此链接以米为单位计算距离

我得到的结果是米,比如2.4737676E-5,这也是一个浮动值。

我想只取小数点后的前两个值。但使用十进制格式和字符串格式,我也无法得到预期的结果,如(2.47)。。仅为0.00。

>  float meanwhiledist=distFrom(latti,longii,curlat,curlongi);
>                  DecimalFormat df2 = new DecimalFormat( "#.00"); 
>                  double dd2dec = new Double(df2.format(meanwhiledist));

                         or

           Double dd = Double.valueOf(meanwhiledist);
           String angleFormated = String.format("%.2f", dd);

if i print angleformated and dd2dec my result coming as 0.00        

共有1个答案

华俊贤
2023-03-14

2.4737676E-5的值似乎低于您的预期:

    float ff= 2.4737676E-5f;
    System.out.println("float value: "+ff);
    Double dd=Double.valueOf(ff);
    System.out.println("double value: "+dd);
    BigDecimal test=new BigDecimal(dd);
    System.out.println("big decimal value: "+test);
    String angleFormatted=test.toString();
    System.out.println("String value: "+angleFormatted);

输出:

 float value: 2.4737676E-5
 double value: 2.4737675630603917E-5
 big decimal value: 0.000024737675630603916943073272705078125
 String value: 0.000024737675630603916943073272705078125

您得到的输出实际上是正确的,因为它返回0.000的前2位小数。。。。。

 类似资料:
  • 问题内容: 假设我有x1,y1,还有x2,y2。 我如何找到它们之间的距离?这是一个简单的数学函数,但是此在线代码段吗? 问题答案: dist = sqrt( (x2 - x1)2 + (y2 - y1)2 ) 正如其他人指出的那样,您也可以使用等效的内置函数:

  • 问题内容: 我有一个员工表,如下所示: 我需要获取id等于4的问题的最小值和最大值。在这种情况下,我需要返回5和25。我使用以下查询实现了这一点: 但是,这不会返回的是问题ID。如何调整查询以显示q2是最小值,q4是最大值?我知道我可以写一个大写的语句,但是我也觉得可以使用联接来完成,但是我不知道。 注意:这是针对postgresql数据库的,但是我也标记了MySQL,因为我知道它也支持和函数。如

  • 问题内容: 我有两个 x - y 坐标数组,我想找到一个数组中 每个 点与另一个数组中 所有 点之间的最小欧几里得距离。数组的大小不一定相同。例如: 我当前的方法遍历每个坐标,并计算该坐标与其他坐标之间的距离。 有没有一种方法可以消除for循环,并以某种方式在两个数组之间进行逐元素计算?我设想生成一个距离矩阵,为此我可以找到每一行或每一列中的最小元素。 看问题的另一种方法。假设我将(length

  • 我正在使用一个挂起的意图来启动一个闹钟(使用AlarmManager)。我需要不同的结果代码启动的活动,基于两个按钮中的哪一个放在它的用户点击(Snooze或取消)。我怎么得到这个结果?不幸的是,在关闭活动上启动finish()方法之后,没有在父活动中启动onActivityResult()方法。在Android文档中,它指出

  • 问题内容: 我需要创建一个类来计算两点之间的距离。我被困住了,我是一个完全的初学者。这是我的课程: 第二课。 我不确定如何在两个定义的点之间获取点对象(中间点)。 我可以创建点对象,但不确定如何通过位于这两个点对象之间的方法返回点对象。 问题答案: 平面上的两个点(x1,y1)和(x2,y2)之间的距离为: 但是,如果您想要的只是两个点的中点,则应将中点函数更改为: 这将返回一个全新的点对象,其点

  • 问题内容: 我正在使用Python + Numpy(也可以使用Scipy)并具有三个2D点 我试图获得从P3垂直到P1和P2之间绘制的直线的距离。设,和 用矢量符号表示这很容易,但是我对python / numpy还是相当陌生,无法获得任何有效的方法(甚至是关闭方法)。 任何提示表示赞赏,谢谢! 问题答案: 尝试使用以下 规范 函数