CodeGym /Java 博客 /China /Java floor() 方法
作者
John Selawsky
Senior Java Developer and Tutor at LearningTree

Java floor() 方法

已在 China 群组中发布

数学中的向下取整函数是什么?

在数学中也被称为最大整数函数的向下取整函数以一个实数“x”作为输入。该函数返回小于或等于输入数 x 的最大整数。通常表示为 floor(x) 或 ⌊x⌋。该函数用于将有小数部分的实数转换成没有小数部分的整数。 为了更好地进行理解,我们简单看一下下面的例子。

floor(5) = 5
floor (1.3) = 1
floor (7.9) = 7

Java 中的 Math.floor() 方法是什么?

Java 提供了一个等价的数学向下取整函数。下面说明了你如何理解该方法。
Java 中的 Math.floor() 方法返回“double”值,该值小于和等于参数的最大整数。
如果给定的数字已经是整数,则它返回该整数。如果参数为零、无穷大或 NaN,它返回相同的参数。

方法头


public static double floor(double x)
该方法采用双精度值 (double x) 作为参数,其向下取整待定。它不需要导入任何外部包。

Return 类型 math.floor

该方法返回小于或等于给定参数的双精度 (double floor) 值。

示例


public class Driver1 {

	public static void main(String[] args) {


		double x = 50; // floor for whole number (Integer value)
 		double floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);

		x = 21.7; // floor for positive decimal
		floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);

		x = -21.7; // floor for negative decimal
		floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);
	
		x = 0; // floor for zero (Integer value)
		floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);
		
		
		// Boundary Cases 
		x = +3.3/0;  // Case I - floor for +Infinity
		floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);
		
		x = -3.3/0; // Case II - floor for -infinity
		floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);
		
		x = -0.0/0; // Case III - floor for NaN
		floorValue = Math.floor(x);
		System.out.println("floor⌊" + x + "⌋ = " + floorValue);
	
	}

}

输出

floor⌊50.0⌋ = 50.0 floor⌊21.7⌋ = 21.0 floor⌊-21.7⌋ = -22.0 floor⌊0.0⌋ = 0.0 floor⌊Infinity⌋ = Infinity floor⌊-Infinity⌋ = -Infinity floor⌊NaN⌋ = NaN
Java floor() 方法 - 1

说明

在上面的代码片段中,我们对向下取整函数使用了不同的输入值来确定其输出。我们已使用正实数和负实数作为输入值。我们还传递了正负无穷大以及 Nan 和零值来检查向下取整函数的结果。

结论

这就是 Math.floor(x) 方法在 Java 中的基本实现。不要忘记边学边练。请贴出你可能遇到的任何问题。祝学习愉快!
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION