java中Math的floor,round和ceil的区别

简介

floor表示小于等于该值的最大整数,向下取整,趋近于正无穷。ceil表示大于等于该值的最小整数,向上取整,趋近于负无穷。round表示最接近该值的整数,趋近于正无穷。

测试代码

import java.util.List;

public class Main {

  public static void main(String[] args) {
    List<Double> doubles = List.of(1.4, 1.5, 1.6, -1.4, -1.5, -1.6);
    for (Double aDouble : doubles) {
      System.out.println(
          Math.floor(aDouble) + "		" + Math.round(aDouble) + "		" + Math.ceil(aDouble));
    }
  }
}

测试结果

floor round ceil
1.4 1.0 1 2.0
1.5 1.0 2 2.0
1.6 1.0 2 2.0
-1.4 -2.0 -1 -1.0
-1.5 -2.0 -1 -1.0
-1.6 -2.0 -2 -1.0

floor表示向下取整,ceil表示向上取整,round表示最接近整数,如果左右一样大,取大值,-1.5到-1和-2一样近,取-1,Math.round(x)就等于Math.floor(x+0.5)。

原文地址:https://www.cnblogs.com/strongmore/p/14213116.html