java学习记录10

Math类总结

Math.abs(int a)

返回 int 值的绝对值。

java 复制代码
int a = 10;
System.out.println(Math.abs(a)); //10

int b = -10;
System.out.println(Math.abs(b)); //10

Math.acos(double a)

返回值的反余弦;返回的角度在 0.0 到pi.

java 复制代码
返回指定 double 类型参数的反余弦值,如果指定的参数大于 1,则返回 NaN。

返回值在 0 到 Math.PI 之间。

double acos = Math.acos(0.5);
System.out.println(acos); //1.0471975511965979

Math.addExact(int x, int y)

返回其参数的总和,如果结果溢出 int 则抛出异常。

java 复制代码
int i = Math.addExact(100, 100);
System.out.println(i); //200

Math.cbrt(double a)

返回 double 值的立方根。

java 复制代码
double cbrt = Math.cbrt(27);
System.out.println(cbrt); //3.0

Math.ceil(double a)

返回大于或等于参数且等于数学整数的最小(最接近负无穷大)double 值。

java 复制代码
double ceil = Math.ceil(10.4);
System.out.println(ceil); //11.0

Math.copySign(double magnitude, double sign)

返回带有第二个浮点参数符号的第一个浮点参数。

java 复制代码
float v = Math.copySign(10, -2);
System.out.println(v); // -10.0

float v1 = Math.copySign(10, 2);
System.out.println(v1); // 10.0

Math.cosh(double x)

返回 double 值的双曲余弦值。

java 复制代码
 double cosh = Math.cosh(10);
 System.out.println(cosh); //11013.232920103324

Math.exp(double a)

返回欧拉数e 提高到 double 值的幂。

java 复制代码
double exp = Math.exp(1);
System.out.println(exp); //2.718281828459045

Math.expml(double x)

返回ex -1.

java 复制代码
double v = Math.expm1(1);
System.out.println(v); //1.718281828459045

Math.floor(double a)

返回小于或等于参数且等于数学整数的最大(最接近正无穷大)double 值。

java 复制代码
double floor = Math.floor(3.6);
System.out.println(floor); //3.0

Math.floorDiv(int x, int y)

返回小于或等于代数商的最大(最接近正无穷大)int 值。

java 复制代码
int i = Math.floorDiv(70, 1);
System.out.println(i); //70

int j = Math.floorDiv(70, 2);
System.out.println(j); //35

int k = Math.floorDiv(70, 30);
System.out.println(k); //2

Math.floorMod(int x, int y)

返回 int 参数的底部模数。

java 复制代码
取模运算是求两个数相除的余数。

int i = Math.floorMod(10, 3);
System.out.println(i); //1

int j = Math.floorMod(15, 3);
System.out.println(j); //0

Math.fma(double a, double b, double c)

返回三个参数的融合乘加;也就是说,返回前两个参数与第三个参数相加的精确乘积,然后四舍五入到最接近的 double 。

java 复制代码
double fma = Math.fma(6.0,6.0,11.1);
System.out.println(fma); //47.1

Math.getExponent(double d)

返回在 double 的表示中使用的无偏指数。

java 复制代码
///该方法从表示中返回2的指数部分。

int exponent1 = Math.getExponent(8);
System.out.println(exponent1); //3

int exponent2 = Math.getExponent(10);
System.out.println(exponent2); //3

int exponent = Math.getExponent(128.0);
System.out.println(exponent); //7

Math.hypot(double x, double y)

返回平方根(x 2 +y2) 没有中间溢出或下溢。

java 复制代码
double hypot = Math.hypot(8, 6);
System.out.println(hypot); //10.0

Math.IEEEremainder(double f1, double f2)

按照 IEEE 754 标准的规定计算两个参数的余数运算。

java 复制代码
double v = Math.IEEEremainder(100, 11);
System.out.println(v); //1.0

Math.log(double a)

返回自然对数(基数e ) 的 double 值。

java 复制代码
double log = Math.log(Math.exp(1));
System.out.println(log); //1.0

Math.log10(double a)

返回 double 值的以 10 为底的对数

java 复制代码
double v = Math.log10(100);
System.out.println(v); //2.0

Math.negateExact(int a)

返回参数的否定,如果结果溢出 int 则抛出异常。

java 复制代码
int i = Math.negateExact(10);
System.out.println(i); //-10

Math.pow(double a, double b)

返回第一个参数的第二个参数次方的值。

java 复制代码
double pow = Math.pow(2, 5);
System.out.println(pow); //32.0

Math.random()

返回带正号的 double 值,大于或等于 0.0 且小于 1.0 。

java 复制代码
double random = Math.random();
System.out.println(random); //0.21444985524476223

Math.rint(double a)

返回值最接近参数且等于数学整数的 double 值。

java 复制代码
double rint = Math.rint(11.2);
System.out.println(rint); //11
double rint1 = Math.rint(11.5);
System.out.println(rint1); //12.0

Math.round(double a)

返回最接近参数的 long,四舍五入到正无穷大。

java 复制代码
long round = Math.round(10.5);
System.out.println(round); //11

long round1 = Math.round(10.4);
System.out.println(round1); //10

Math.scalb(double d, int scaleFactor)

返回 d × 2scaleFactor 四舍五入就好像是由一个正确舍入的浮点乘法执行的。

java 复制代码
float scalb = Math.scalb(10, 2);
System.out.println(scalb); //40.0

Math.signum(double d)

返回参数的符号函数;如果参数为零则为零,如果参数大于零则为 1.0,如果参数小于零则为 -1.0。

java 复制代码
double signum = Math.signum(10.0);
System.out.println(signum);  //1.0
double signum1 = Math.signum(-10.0);
System.out.println(signum1); //-1.0

Math.sqrt(double a)

返回 double 值的正确四舍五入的正平方根。

java 复制代码
double sqrt = Math.sqrt(9);
System.out.println(sqrt); //3.0

Math.subtractExact(int x, int y)

返回参数的差异,如果结果溢出 int 则抛出异常。

java 复制代码
int i = Math.subtractExact(100, 10);
System.out.println(i); //90

Math.toDegrees(double angrad)

将以弧度测量的角度转换为近似等效的以度测量的角度。

java 复制代码
//1弧度= 180°/π= 57.295779513°
double degrees = Math.toDegrees(10.0);
System.out.println(degrees); //572.9577951308232

Math.toRadians(double angdeg)

将以度为单位的角度转换为近似等效的以弧度为单位的角度。

java 复制代码
//度=弧度×180°/π
double radians = Math.toRadians(90.0);
System.out.println(radians); //1.5707963267948966
相关推荐
鶴哥只手遮天3 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天3 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天3 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天3 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天3 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天3 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天4 小时前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天4 小时前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天4 小时前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源
鶴哥只手遮天4 小时前
Spring AI 2.0.1 深度解析-第 13 章 MCP 客户端:传输、工具聚合与命名冲突
java·人工智能·开源