Java 当joda时间持续时间除以整数时,如何返回/提高精度?

Java 当joda时间持续时间除以整数时,如何返回/提高精度?,java,jodatime,Java,Jodatime,我想通过返回要乘以的值作为一个大的小数来计算一个速率。 下面的相关代码片段有效: Duration d1 = new Duration (startD, endD); BigDecimal dur = new BigDecimal("0.00"); dur.setScale(2, RoundingMode.HALF_UP); dur = dur.add(new BigDecimal(d1.getStandardMinutes()/60)); return dur; 然而,我得到的只是一个没有

我想通过返回要乘以的值作为一个大的小数来计算一个速率。 下面的相关代码片段有效:

Duration d1 = new Duration (startD, endD);
BigDecimal dur = new BigDecimal("0.00");
dur.setScale(2, RoundingMode.HALF_UP);
dur = dur.add(new BigDecimal(d1.getStandardMinutes()/60));

return dur;

然而,我得到的只是一个没有刻度的整数。

我想你想要的是

Duration d1 = new Duration (startD, endD);
BigDecimal dur = new BigDecimal(d1.getStandardMinutes()/60.0)
                      .setScale(2, RoundingMode.HALF_UP);
为什么要将“0.00”四舍五入到小数点后两位,然后丢弃结果,然后将0.00添加到另一个数字?