我有两个 double ,如下:011490.2 和 011500.1 我想在java中打印这个范围内的所有 double ,四舍五入到小数点后一位。我怎样才能做到这一点?
这是我到目前为止所尝试的,但它正在进入某种无限循环:
Double a = Double.parseDouble(temp[0].subSequence(temp[0].indexOf("g")+1, temp[0].length()).toString());
Double b = Double.parseDouble(temp[1].subSequence(temp[0].indexOf("g")+1, temp[1].length()).toString());
int count = 0;
while (b >= a) {
count++;
System.out.println("printing range:" + Math.round(Math.nextUp(a));
}
我想要打印这样的内容: 011490.2 011490.3 011490.4 011490.5 011490.6 011490.7 011490.8 011490.9 011490.2 011490.3 011490.4 011491.1 011491.2 011491.3 011491.4 011491.5 。 。 。 。 011500.1
最佳答案
为了完整起见,这里是 for
循环方式:
double start = 11490.2D;
double end = 11500.1D;
for(double i = start; i < end + 0.05; i += 0.1) {
System.out.printf("%.1f\n", i);
}
编辑:根据亨利的评论更新
关于java - 如何在java中获取下一个更高的十进制值,四舍五入到一位小数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51857617/