我需要给出用户输入的数字的精确度,直到少数位。比如如果用户输入一些随机值并给出他想要的准确度直到三位数字,那么我需要将数字四舍五入到小数点后三位。所以我做了这样的事情小数点后加n个零点
int index = value.indexOf('.');
if (index >= 0)
{
String fractional = value.substring(index);
if (fractional.length() > decimalPlaces)
{
floatValue = roundOffDecimals(floatValue, decimalPlaces);
}
}
retVal = new Float(floatValue);
但是当用户输入一些值,但不进入为十进制我需要显示它用零作为小数点后的位数惨淡值的任何值。 喜欢15是他的号码,3是他的准确性,那么我需要显示的数字为15.000
我不能在小数点后显示零,当它总是变化。请帮忙。 我试过DeciamlFormat df = new DecimalFormat(“”,#。##);但需要静态值。我的精确度不断变化。
任何帮助将不胜感激。
你*显示*可精度用format命令实现。你实际上拥有*的精度是完全不同的。请记住:您所做的任何乘法,除法,舍入和截断将*总是*为“近似值”,并将*总是*减小浮点值的精度:http://en.wikipedia.org/wiki/Floating_point – paulsm4 2012-08-10 05:28:05