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

在Java中打印小数点后1位数字[重复]

葛景龙
2023-03-14

我试图打印小数点后的数字,但我只想显示一个数字。

ratio = (double) comparisons / arrayLength;

(当比率是双倍和比较时,arraylelengthint)。

我在一个类中进行计算,并将结果添加到一个< code>string(当稍后从一个方法返回时),并在一个测试类中进行打印。

我需要更改比率,并且不允许在测试类中使用printf

谢谢你的帮助。

共有2个答案

薛扬
2023-03-14

您可以使用< code>DecimalFormat显式格式化数字:

DecimalFormat df = new DecimalFormat("###.#");
String formatted = df.format(ratio);
System.out.printly("ratio is " + ratio);
蒯胜泫
2023-03-14

由于您已经将结果保存在字符串中,因此您可以执行以下操作 -

 String result = String.format("%.1f",ratio);

如果您想将答案添加到现有字符串中,那么您可以这样做-

result = String.format(result+"%.1f",ratio);

一个例子是这样的-

 String s = String.format("%.1f",2.3535);

产出-2.4

 类似资料:
  • 我在打印格式上有一个小问题。如果数字不是整数,我想打印小数点后的2位数字(例如55.53467- 我拥有的代码是: 当然,它总是打印两位数。非常感谢

  • 我可以用< code>System.out.print来做吗?

  • 问题内容: 在我的代码中,我使用整数乘以100作为小数(0.1为10等)。您能帮我格式化输出以显示为十进制吗? 问题答案:

  • 问题内容: 我需要输出4个不同的浮点数到小数点后两位。 这就是我所拥有的: 这是非常不干净的,看起来很糟糕。是否有办法在输出’%.2f’中进行浮动? 注意:使用Python 2.6。 问题答案: 好吧,我至少会清理如下:

  • 问题内容: 我正在尝试将双精度数格式化为精确到小数点后2位(如果有分数),然后使用DecimalFormat将其截断 因此,我想取得下一个结果: 变体#1 变体#2 有什么想法可以选择我的情况吗? 问题答案: 我达到的唯一解决方案是使用 if语句在这里提到 测试中 如果有人知道更优雅的方式,请分享!

  • 我已经阅读了很多stackoverflow问题,但似乎没有一个对我有效。我正在使用<code>数学。round()进行舍入。这是代码: 我得到的输出是:< code>123,但我希望它是< code>123.14。我知道添加< code>*100/100会有所帮助,但是正如你所看到的,我并没有设法让它工作。 输入和输出都是双份绝对是必不可少的。 如果您更改上述代码的第4行并发布它,那将是很大的帮助