Java Math类中的Math.rint(double) and Math.round(double)

1. 对于rint()

a) 2.50 在2.0和3.0之间. rint() 返回里的最近的偶数. 所有rint(2.50) 返回 2.0
b) 1.50 在2.0和1.0之间. rint() 返回里的最近的偶数. 所有rint(1.50) 返回 2.0

2. 对于round()

a) 2.50 在2.0和3.0之间. round() 返回离他最近的比较大的数. 所以round(2.50) 返回 3
b) 1.50 在2.0和1.0之间. round() 返回离他最近的比较大的数. 所以round(1.50) 返回 2

注意: rint() 返回的是double值,而round() 返回的是int/long.

3. 如果参数已经是整数,这两个方法的返回值都和传的参数一样

1. System.out.println(Math.rint(3.0)); // prints 3.0

2. System.out.println(Math.round(3.0)); // prints 3.

其他的请参见:

http://way2java.com/java-lang/class-math-java-lang/difference-of-math-
rintdouble-and-math-rounddouble/