Java 如何限制处理过程中的小数精度?

Java 如何限制处理过程中的小数精度?,java,processing,Java,Processing,我有几个浮点值正在处理,小数位数超过8位 在使用text()绘制这些值之前,如何将这些值四舍五入到十分之一?您可以设置浮点(float或double)x的格式,小数点后两位如下: String.format("%.2f", x) 这将为您提供一个字符串 例如: String.format("%.2f", 12.34567) 返回字符串“12.35”使用中介绍的nf函数。“right”参数允许您指定要使用的小数位数 编辑:我意识到我误解了你的问题;我上面链接的函数将被截断,而不是取整。一个快速

我有几个浮点值正在处理,小数位数超过8位


在使用
text()
绘制这些值之前,如何将这些值四舍五入到十分之一?

您可以设置浮点(
float
double
x
的格式,小数点后两位如下:

String.format("%.2f", x)
这将为您提供一个
字符串

例如:

String.format("%.2f", 12.34567)

返回字符串
“12.35”

使用中介绍的nf函数。“right”参数允许您指定要使用的小数位数

编辑:我意识到我误解了你的问题;我上面链接的函数将被截断,而不是取整。一个快速的谷歌给了我以下答案:

float round(float number, float decimal) {
    return (float)(round((number*pow(10, decimal))))/pow(10, decimal);
} 
此处线程中的用户Markavian建议:


希望这有帮助。

您也可以使用DecimalFormat

DecimalFormat myFormatter = new DecimalFormat("#.##");
String output = myFormatter.format(12.34567);

我使用的是与Java类似的处理。