public class Asd {
public static Double format(double data,int scope){
//10的位数次方 如保留2位则 tempDouble=100
double tempDouble=Math.pow(10, scope);//tempDouble=10的scope次方
//原始数据先乘tempDouble再转成整型,作用是去小数点
data=data*tempDouble;//让data变成原来的多少倍,现在是需要保留两位小数,所以先让他变大100倍
int tempInt=(int) data;//再将变大后的数强转成int,为的是去掉变大后的数的小数点后的数
//返回去小数之后再除tempDouble的结果
return tempInt/tempDouble;再让得到的int型的数缩小100倍,就是原来的数保留两位小数的结果
}
public static void main(String[] args) {
System.out.println(format(123.123123123,2));
}
}
|