Java 数学 – ceil() Floor() 方法

⚡ 智能摘要

Java Math 类 (java.lang.Math) 提供静态方法,用于绝对值、四舍五入、向上取整、向下取整、最小值、最大值、指数、对数和三角运算。这些内置函数取代了手动计算,使用户能够直接在任何程序中实现精确的科学计算。 Java 程序。

  • 🔢 常数: Math.E (2.718281828459045) 和 Math.PI (3.141592653589793) 以双精度字段的形式公开,用于对数公式和几何公式。
  • 📏 圆环家庭: abs() 返回数值大小,round() 返回最接近的整数,而 ceil() 和 floor() 将数值向上或向下取整到整数。
  • ️ 比较方法: min() 和 max() 返回 int、long、float 和 double 类型中两个数值参数的较小值或较大值。
  • 📈 高等数学: exp()、log()、pow() 和 sqrt() 函数分别处理双精度值的指数、对数、幂和平方根计算。
  • 📐 三角学: sin()、cos()、tan()、atan2()、toRadians() 和 toDegrees() 函数以弧度为单位进行角度计算。

Java 数学方法 ceil() 和 floor()

什么是 Java 数学课?

Java 已经有很多高级应用,包括处理物理学、建筑和结构设计中的复杂计算,处理地图和相应的纬度和经度等等。

所有此类应用都需要复杂的计算和方程式,手动执行起来非常繁琐。以编程方式进行此类计算将涉及对数、三角函数、指数方程以及类似运算。

Java 数学课

现在,您无法将所有对数或三角函数表硬编码到应用程序或数据的某个地方。数据会非常庞大​​,维护起来也很复杂。

Java 为此提供了一个非常有用的课程。它是数学 Java (java.lang.Math)类。此类提供了执行指数运算、对数运算、求根运算以及三角方程运算等方法。

数学中最基本的两个元素是“e”(自然对数的底数)和“π”(圆的周长与其直径之比)。这两个常数在上述计算和运算中经常用到。因此,数学课…… Java 提供这两个常量作为双精度字段:

  • 数学E – 具有以下值 2.718281828459045
  • Math.PI – 具有以下值 3.141592653589793

让我们来看一下下表,它显示了…… 基本方法 及其描述:

付款方式描述参数
ABS返回参数的绝对值Double, 浮点数, 整数, 长整型
圆返回最接近的整数或长整型值(根据参数而定)。双精度或浮点
细胞数学 ceil 函数 Java 返回大于或等于参数的最小整数Double
地板Java floor 方法返回小于或等于参数的最大整数Double
分钟返回两个参数中最小的一个Double, 浮点数, 整数, 长整型
最大返回两个参数中最大的一个Double, 浮点数, 整数, 长整型

以下是上述方法的代码实现。

注意: 无需显式导入 java.lang.Math,因为它已被隐式导入。它的所有方法都是静态的。

整型变量:

int i1 = 27;
int i2 = -45;

Double (十进制)变量:

double d1 = 84.6;
double d2 = 0.45;

Java 数学 abs() 方法示例

此 Java Math abs() 方法返回参数的绝对值。

public class Guru99 {
 public static void main(String args[]) {
  int i1 = 27;
  int i2 = -45;
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Absolute value of i1: " + Math.abs(i1));
  System.out.println("Absolute value of i2: " + Math.abs(i2));
  System.out.println("Absolute value of d1: " + Math.abs(d1));
  System.out.println("Absolute value of d2: " + Math.abs(d2));
 }
}

预期产量:

Absolute value of i1: 27
Absolute value of i2: 45
Absolute value of d1: 84.6
Absolute value of d2: 0.45

Java Math.round() 方法示例

Math.round() 方法 Java 返回最接近参数指定的整数或长整型值。以下是 Math.round 的示例。 Java 方法。

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Round off for d1: " + Math.round(d1));
  System.out.println("Round off for d2: " + Math.round(d2));
 }
}

预期产量:

Round off for d1: 85
Round off for d2: 0

Java Math.ceil() 和 Math.floor() 方法示例

Math.ceil() 和 Math.floor() 方法 Java 用于分别返回大于等于(以及小于等于)参数的最小和最大整数。以下是数学函数的向下取整和向上取整。 Java 例。

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Ceiling of '" + d1 + "' = " + Math.ceil(d1));
  System.out.println("Floor of '" + d1 + "' = " + Math.floor(d1));
  System.out.println("Ceiling of '" + d2 + "' = " + Math.ceil(d2));
  System.out.println("Floor of '" + d2 + "' = " + Math.floor(d2));
 }
}

我们将得到 Math.ceil 的以下输出 Java 例。

预期产量:

Ceiling of '84.6' = 85.0
Floor of '84.6' = 84.0
Ceiling of '0.45' = 1.0
Floor of '0.45' = 0.0

Java Math.min() 和 Math.max() 方法示例

此 Java Math.min() 方法返回两个参数中的较小值,而 Math.max() 方法返回两个参数中的较大值。

public class Guru99 {
 public static void main(String args[]) {
  int i1 = 27;
  int i2 = -45;
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("Minimum out of '" + i1 + "' and '" + i2 + "' = " + Math.min(i1, i2));
  System.out.println("Maximum out of '" + i1 + "' and '" + i2 + "' = " + Math.max(i1, i2));
  System.out.println("Minimum out of '" + d1 + "' and '" + d2 + "' = " + Math.min(d1, d2));
  System.out.println("Maximum out of '" + d1 + "' and '" + d2 + "' = " + Math.max(d1, d2));
 }
}

预期产量:

Minimum out of '27' and '-45' = -45
Maximum out of '27' and '-45' = 27
Minimum out of '84.6' and '0.45' = 0.45
Maximum out of '84.6' and '0.45' = 84.6

Java 数学指数和对数方法

除了基本方法之外, Java 数学课还讲授指数运算和对数运算。下表列出了这些方法及其说明。

付款方式描述参数
EXP返回以参数为幂的自然对数(e)的底数Double
日志返回参数的自然对数翻番
战俘接受 2 个参数作为输入并返回第一个参数的第二个参数的幂的值Double
地板Java math floor 返回小于或等于参数的最大整数Double
开方返回参数的平方根Double

下面给出上述方法的代码实现(使用的变量与上面相同)。

public class Guru99 {
 public static void main(String args[]) {
  double d1 = 84.6;
  double d2 = 0.45;
  System.out.println("exp(" + d2 + ") = " + Math.exp(d2));
  System.out.println("log(" + d2 + ") = " + Math.log(d2));
  System.out.println("pow(5, 3) = " + Math.pow(5.0, 3.0));
  System.out.println("sqrt(16) = " + Math.sqrt(16));
 }
}

预期产量:

exp(0.45) = 1.568312185490169
log(0.45) = -0.7985076962177716
pow(5, 3) = 125.0
sqrt(16) = 4.0

Java 数学三角方法

此 Java 数学课还讲解了三角运算。下表列出了这些方法及其说明。

付款方式描述参数
无返回指定参数的正弦值Double
车返回指定参数的余弦值翻番
黄褐色返回指定参数的切线Double
阿坦2将直角坐标 (x, y) 转换为极坐标 (r, theta) 并返回 theta 值Double
到度将参数转换为度Double
开方返回参数的平方根Double
转弧度将参数转换为弧度Double

默认参数单位为弧度。以下是代码实现。

public class Guru99 {
 public static void main(String args[]) {
  double angle_30 = 30.0;
  double radian_30 = Math.toRadians(angle_30);
  System.out.println("sin(30) = " + Math.sin(radian_30));
  System.out.println("cos(30) = " + Math.cos(radian_30));
  System.out.println("tan(30) = " + Math.tan(radian_30));
  System.out.println("Theta = " + Math.atan2(4, 2));
 }
}

预期产量:

sin(30) = 0.49999999999999994
cos(30) = 0.8660254037844387
tan(30) = 0.5773502691896257
Theta = 1.1071487177940904

现在,利用上述方法,你也可以设计自己的科学计算器了。 Java.

常见问题

Java Math 是 java.lang 中的一个最终实用类,它提供了常用数值运算的静态方法,包括绝对值、舍入、幂、根、对数和三角函数,以及常量 Math.PI 和 Math.E。

不。java.lang 包是隐式导入的,所以 Math 方法始终可用。为了使代码更简洁,可以添加 `import static java.lang.Math.*;`,然后调用 sqrt 或 pow 方法时无需添加 Math 前缀。

Math.ceil 返回大于或等于参数的最小整数,而 Math.floor 返回小于或等于参数的最大整数。两者都返回双精度浮点数,因此 4.2 分别变为 5.0 或 4.0。

所有三角函数方法都使用弧度制,而不是角度制。在调用 sin、cos 或 tan 函数之前,请先使用 `Math.toRadians(30)` 将 30 转换为弧度制。否则,这些方法会将 30 视为 30 弧度,并返回一个差异很大的值。

Java 没有专门的指数运算符。脱字符号 ^ 表示按位异或,而不是乘方。要计算幂,请使用 Math.pow(基数, 指数)。对于整数平方,直接计算 x * x 比调用 Math.pow 更快。

当溢出代表真正的错误时,例如计数器、财务总计或索引运算,请使用 Math.addExact。它会抛出 ArithmeticException 异常,而不是包装异常。ping 悄无声息地,却让错误的结果变得清晰可见,容易被发现。

机器学习库 Java 它使用 Math.exp 进行 softmax 运算,Math.log 进行交叉熵损失,Math.sqrt 进行均方根误差计算,以及 Math.tanh 进行激活函数计算。向量数学框架随后会将这些调用批量处理到数组中,用于训练和推理。

是的。GitHub Copilot 会根据描述公式的注释,自动生成数学方法调用、弧度转换和溢出安全运算。 Rev在提交之前,请仔细查看每条关于数值极端情况(例如除以零或精度损失)的建议。ping.

总结一下这篇文章: