【Java学习笔记】Math方法

Math 方法

第一组:常用的

方法名 描述
Math.abs() 返回参数的绝对值
Math.ceil() 返回大于或等于参数的最小整数(向上取整)
Math.floor() 返回小于或等于参数的最大整数(向下取整)
Math.max() 返回两个参数中较大的值
Math.min() 返回两个参数中较小的值
Math.pow(数,开方次数) 返回第一个参数的第二个参数次方
Math.random() 返回一个 0 到 1 之间的随机数(左闭右开)
Math.sqrt() 返回参数的平方根
Math.round() 返回最接近参数的整数(四舍五入,存在精度缺失问题)

第二组:数学相关

方法名 描述
三角函数 :全部要求传入弧度参数
Math.sin() 返回参数的正弦值
Math.cos() 返回参数的余弦值
Math.tan() 返回参数的正切值
Math.asin() 返回参数值的反正弦值(弧度)
Math.acos() 返回参数值的反余弦值(弧度)
Math.atan() 返回参数值的反正切值(弧度)
Math.sinh() 返回参数的双曲正弦值
Math.cosh() 返回参数的双曲余弦值
Math.tanh() 返回参数的双曲正切值
指数和对数
Math.exp() 返回参数值的指数值
Math.expm1() 返回 e 的 x 次方减去 1 的结果
Math.log() 返回参数的自然对数
Math.log10() 返回参数的以 10 为底的对数
如果要计算其他数为底的对数,需要以 log10 为基准,使用换地公式解决
常用计算
Math.abs() 返回参数的绝对值
Math.ceil() 返回大于或等于参数的最小整数
Math.floor() 返回小于或等于参数的最大整数
Math.max() 返回两个参数中较大的值
Math.min() 返回两个参数中较小的值
Math.pow() 返回第一个参数的第二个参数次方
Math.sqrt() 返回参数的平方根
Math.hypot() 返回直角三角形的斜边长度
角度与弧度
Math.toDegrees() 将弧度转换为角度
Math.toRadians() 将角度转换为弧度

使用说明

1. 三角函数部分:要求全部传参为弧度

2. Math.log():默认以 e 为底

3. 计算其他数字为底的对数(使用换底公式)

java 复制代码
public class time_test {
    public static void main(String[] args) {
        System.out.println(tool.log_x_n(2,2));
    }
}

class tool{
    public static double log_x_n(int x,int n){
        double temp1 = Math.log10(n);
        double temp2 = Math.log10(x);
        return temp1 / temp2;
    }
}

4. randon 练习:生成 2 <= x <= 7 之间的随机数

获取 a,b 之间的随机数 --> 公式:a + Math.random*(b - a + 1)

java 复制代码
for (int i = 0; i < 5; i++) {
    System.out.println((int)(2 + Math.random()*(7 - 2 + 1)));
}

// 输出结果
6
7
3
2
5

解释

Math.random()*6 返回的是 0 <= x < 6 小数

2 + Math.random() * 6 返回的就是 2 <= x < 8 小数

最后取整即可返回整数

相关推荐
马优晨13 分钟前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
a1117762 小时前
2FA 验证码生成器(github登录验证 app)
笔记·学习
我的xiaodoujiao2 小时前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
维天说3 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
破碎的南瓜3 小时前
sqli--sql注入过关笔记(1,2,3,4,5,9)
数据库·笔记·sql
Zane19944 小时前
并发 vs 并行:别再傻傻分不清了,一文讲透 Java 并发编程的第一课
java·后端
你想知道什么?4 小时前
线性回归-学习笔记
笔记·学习·线性回归
鱼毓屿御4 小时前
从「只会聊」到「边想边做」的跃迁
前端·学习·react.js
谙弆悕博士4 小时前
系统集成项目管理工程师教程(第3版)笔记——第17章:法律法规和标准规范
笔记·职场和发展·学习方法·业界资讯·软考·法律·法规
噢,我明白了4 小时前
java中Excel的导入和导出(EasyExcel)
java·开发语言·excel