printf("s=%.3f",s);保留3位小数
看看下需的例子:
double d = 345.678;
String s = "hello!";
int i = 1234;
//"%"表示进行格式化输出,"%"之后的内容为格式的定义。
System.out.printf("%f",d);//"f"表示格式化输出浮点数。
System.out.printf("%9.2f",d);//"9.2"中的9表示输出的长度,2表示小数点后的位数。
System.out.printf("%+9.2f",d);//"+"表示输出的数带正负号。
System.out.printf("%-9.4f",d);//"-"表示输出的数左对齐(默认为右对齐)。
System.out.printf("%+-9.3f",d);//"+-"表示输出的数带正负号且左对齐。
System.out.printf("%d",i);//"d"表示输出十进制整数。
System.out.printf("%o",i);//"o"表示输出八进制整数。
System.out.printf("%x",i);//"d"表示输出十六进制整数。
System.out.printf("%#x",i);//"d"表示输出带有十六进制标志的整数。
System.out.printf("%s",s);//"d"表示输出字符串。
System.out.printf("输出一个浮点数:%f,一个整数:%d,一个字符串:%s",d,i,s);//可以输出多个变量,注意顺序。
System.out.printf("字符串:%2$s,%1$d的十六进制数:%1$#x",i,s);//"X$"表示第几个变量。
参考一下:
/*
*已知圆球体积为4/3πr3,试编写一个程序,输入圆球半径,经过计算输出圆球的体积。
*从命令窗输入
*/
import java.util.Scanner;
public class Volume{ //定义Java中类成员变量
public static void main(String args[]){ //main()方法体,一个java application程序的入口
Scanner s=new Scanner(System.in);
System.out.println("请输入要体积的圆球的半径r"); //输出提示内容
double r=s.nextDouble(); //定义一个double型变量
double v; //定义一个double 型变量
v=4*Math.PI*Math.pow(r,3)/3; //运算表达式
System.out.println("得圆球的体积为"+v); //输出计算结果,并在开头输出"得圆球的体积为"
}
}
还是用Java自带的类处理起来很方便, 给你做个例子吧:
import java.text.DecimalFormat;
public class Test {
public static void main(String[] args) {
double num = 0.235463;
DecimalFormat fmt = new DecimalFormat(".###%");
System.out.println(fmt.format(num));
}
}
// 显示 : 23.546%
其中".###%"中#表示有就显示, 没有就不显示, 所以3个#就是代表, 最多精确到小数点后3位, 再多出来的位会省略.
方式一:
四舍五入
double f = 111231.5585;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
保留两位小数
方式二:
java.text.DecimalFormat df =new java.text.DecimalFormat(”#.00″);
df.format(你要格式化的数字);
例:new java.text.DecimalFormat(”#.00″).format(3.1415926)
#.00 表示两位小数 #.0000四位小数 以此类推…
方式三:
double d = 3.1415926;
String result = String .format(”%.2f”);
%.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型。
以上是图解简单的Java编程的详细内容。更多信息请关注PHP中文网其他相关文章!