关于%和%mf格式的解释及四舍五入问题的详解

时间:2025-02-21 10:28:59

    前几天室友问我这个小问题时,我发现自己竟然无法肯定的给出答案,索性自己在Eclipse上测试了一下,写了这篇博客,以供大家一起来学习学习!

1.对于输出%格式:

m表示要输出这个数的宽度,包括小数点,如果实际数值的宽度大于m,则以实际的数据宽度为准,如果实际数值宽度小于m,那么默认右对齐,前面补空格。

n表示小数点后面数据的位数。

public static void main(String[] args) {
		float x=1.456f;  
		("%3.2f",x);
}

输出:1.46

public static void main(String[] args) {
		float x=1.456f;   
	("%13.3f",x);
}

 

输出:        1.456(前面有8个空格)

 

2.对于输出%mf格式:

m表示要输出这个数的宽度,包括小数点,如果实际数值的宽度大于m,则以实际的数据宽度为准,如果实际数值宽度小于m,那么默认右对齐,前面补空格。

注意:对于浮点型变量,小数点后默认有6位小数。

public static void main(String[] args) {
		double x=1.456;     //实际数据为1.456000
		("%4f",x);
	}

输出:1.456000

public static void main(String[] args) {
		double x=1.456;    //实际数据为1.456000
              ("%15f",x);
} 

 

输出:       1.456000(前面有7个空格)

 

3.对于四舍五入问题:

直接上代码

public static void main(String[] args) {
		double x=1.456;	
		("%3.2f",x);
	} 输出为1.46

 

public static void main(String[] args) {
		double x=1.454;	
		("%3.2f",x);
	}输出为1.45