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