第一次使用DecimalFormat类...
我需要为我的值存储4位小数精度。 让我告诉你到目前为止我做了什么。
public class Paper
{
public String name, color, type,finish,grain;
public double width,height,gsm, lbs,ppi;
public DecimalFormat df;
public Paper()
{
String pattern = "#0.0000";
df = new DecimalFormat(pattern);
}
public void setWidthAndHeight(String width, String height)
{
//I've censured what I tried so far.
///I need to ensure that the passed width has 4 decimals and that it is stored that way.
this.width = //ENTER answer here! :)
}
感谢您的时间和耐心。
答案 0 :(得分:3)
您可以使用BigDecimal管理小数。
BigDecimal n = new BigDecimal("100.12345");
n = n.setScale(4, RoundingMode.HALF_UP);
n = n.stripTrailingZeros();
System.out.println(n.toPlainString());
使用scale会将数字四舍五入为4位小数。使用stripTrailingZeros删除任何零,并使用toPlainString稍后获取您的数字以进行打印。
http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html