我可以用system。out。print吗?


当前回答

用于演示的简单小程序:

import java.io.*;
import java.util.Scanner;

public class twovalues {

    public static void main(String args[]) {

        float a,b;
        Scanner sc=new Scanner(System.in);
        System.out.println("Enter Values For Calculation");

        a=sc.nextFloat();
        b=sc.nextFloat();

        float c=a/b;
        System.out.printf("%.2f",c);
    }
}

其他回答

你可以使用下面的快速代码,它在最后改变了自己。加上这个点后面有多少个0

float y1 = 0.123456789;
DecimalFormat df = new DecimalFormat("#.00");  
y1 = Float.valueOf(df.format(y1));

变量y1之前等于0.123456789。在代码之后,它只会变成0.12。

double d = 1.234567;
DecimalFormat df = new DecimalFormat("#.##");
System.out.print(df.format(d));
float f = 102.236569f; 
DecimalFormat decimalFormat = new DecimalFormat("#.##");
float twoDigitsF = Float.valueOf(decimalFormat.format(f)); // output is 102.24

你可以使用printf方法,像这样:

System.out.printf("%.2f", val);

简而言之,%。2f语法告诉Java从格式说明符(%)开始以浮点数(f)的十进制表示形式返回变量(val),其中有2位小数(.2)。

除了f,你还可以使用其他转换字符:

D:十进制整数 O:八进制整数 E:科学记数法中的浮点数

很多人都提到过DecimalFormat。但是如果你有最新版本的Java,你也可以使用printf:

System.out.printf("%1.2f", 3.14159D);

有关printf格式字符串的更多信息,请参阅Formatter上的文档。