java小数位数控制

来源:百度知道 编辑:UC知道 时间:2024/06/25 05:29:07
由用户输入来控制小数点后位数
例如3.1415926
当用户输入5,显示小数点后5位:3.14159
当用户输入2,显示小数点后2位,3.14
写出关键步骤,谢

不需要使用for循环,只需要用一个格式化类就可以了!
import java.text.NumberFormat;
import java.util.*;
public class lab1130 {
public static void main(String[] args) {
double a=3.12345678912345678911234;
System.out.println("您想要输出几位小数");
Scanner reader=new Scanner(System.in);
int n=reader.nextInt();
NumberFormat f=NumberFormat.getInstance(); //创建一个格式化类f
f.setMaximumFractionDigits(n); //设置小数位的格式
String s=f.format(a); //格式化数据a,将a格式化为f
System.out.println(s); //输出f
}

}
建议楼主多看看有关有关 Math类的书! 类掌握了做项目就很轻松了。欢迎交流留言!

double data=55553.1415926;//数据
int k=10;//小数点后的位数
String dataStr=Double.toString(data);//先转换为字符串在处理
int dot=dataStr.indexOf(".");//得到小数点的位置
while(dataStr.length()<dot+k+1){//如果小数位不够则补0
dataStr+="0";
}
System.out.println(dataStr.substring(0,dot+k+1));

public class Test {
public static void m