Java Math类API全解析

article/2025/7/28 0:47:47

Java中Math类的常用API

Java的Math类提供了丰富的数学计算方法,包含静态方法可直接调用,适用于基本数值运算、三角函数、指数对数等场景。以下是常用API分类说明:

基本运算方法
// 绝对值
int absValue = Math.abs(-5);      // 5// 最大值与最小值
double max = Math.max(3.2, 5.6);  // 5.6
int min = Math.min(10, 7);        // 7// 四舍五入
long round = Math.round(3.7);     // 4

幂与开方运算
// 平方根
double sqrt = Math.sqrt(16);      // 4.0// 立方根(需结合幂运算)
double cbrt = Math.pow(27, 1.0/3); // 3.0// 幂运算
double power = Math.pow(2, 3);    // 8.0// 自然对数与e的幂
double log = Math.log(Math.E);    // 1.0
double exp = Math.exp(1);         // 2.718...

三角函数
// 角度转弧度
double radians = Math.toRadians(90); // 正弦/余弦/正切
double sin = Math.sin(radians);   // 1.0
double cos = Math.cos(radians);   // 0.0
double tan = Math.tan(Math.PI/4); // 1.0

随机数生成
// [0.0, 1.0)范围内的随机数
double random = Math.random();    // 生成1-100的随机整数
int randInt = (int)(Math.random() * 100) + 1;

其他实用方法
// 向上取整与向下取整
double ceil = Math.ceil(3.2);     // 4.0
double floor = Math.floor(3.9);   // 3.0// 符号函数
double sign = Math.signum(-5.3);  // -1.0

注意事项
  • Math类所有方法均为静态,无需实例化。
  • 角度参数默认使用弧度制,可通过toRadians()转换。
  • 涉及浮点数运算时需注意精度问题,如比较结果建议使用误差范围。

http://www.hkcw.cn/article/ebEfRWWuft.shtml

相关文章

飞牛fnNAS的Docker应用之迅雷篇

目录 一、“迅雷”应用安装 二、启动迅雷 三、迅雷账号登录 四、修改“迅雷”下载保存路径 1、下载路径准备 2、停止“迅雷”Docker容器 3、修改存储位置 4、重新启动Docker容器 5、再次“启用”迅雷 五、测试 1、在PC上添加下载任务 2、手机上管理 3、手机添加下…

Science Advances 上海理工大学与美国杜克大学(Duke University)共同开发了一种仿生复眼相机

编辑丨%科学家开发了一种 AI 辅助的仿生复眼相机。炎炎夏日,相信各位读者都有被蚊子骚扰过的恼火记忆。但往往想要清剿蚊子的时候,却被它灵巧地躲开,再难找到。诸如蚊子这种节肢动物的视觉系统已经进化了 5 亿多年,从寒武纪一直到…

C# 结合PaddleOCRSharp搭建Http网络服务

Windows打开端口: 控制面板 > 系统和安全 > 防火墙> 高级设置 → 入站规则 → 右侧选择 → 新建规则 → 端口 → 协议类型 TCP→ 端口 using System; using System.Drawing; using System.IO; using System.Net; using System.Text; using System.Threadi…

Real SQL Programming

目录 SQL in Real Programs Options Stored Procedures Advantages of Stored Procedures Parameters in PSM SQL in Real Programs We have seen only how SQL is used at the generic query interface --- an environment where we sit at a terminal and ask queries …

华为OD机试真题——跳格子3(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现

2025 A卷 200分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析; 并提供Java、python、JavaScript、C++、C语言、GO六种语言的最佳实现方式! 2025华为OD真题目录+全流程解析/备考攻略/经验分享 华为OD机试真题《跳格子3》: 目录 题目名称…

UE5蓝图暴露变量,类似Unity中public一个变量,在游戏运行时修改变量实时变化和看向目标跟随目标Find Look at Rotation

UE5蓝图中暴露变量,类似Unity中public一个变量,在游戏运行时修改变量实时变化 1,添加变量 2,设置变量的值 3,点开小眼睛,此变量显示在编辑器中,可以运行时修改 看向目标跟随目标Find Look at R…

第 1 章:学习起步

1. React Native前置知识要求 在开始学习React Native之前,有一些前置知识你需要了解。不过别担心,我会带你逐步掌握这些内容,让你顺利入门。 1.1. JavaScript是必须掌握的 学习React Native,JavaScript是基础。你需要了解Java…

BERT***

​​1.预训练(Pre-training)​​ 是深度学习中的一种训练策略,指在大规模无标注数据上预先训练模型,使其学习通用的特征表示,再通过​​微调(Fine-tuning)​​ 适配到具体任务 2.sentence-lev…

在Mathematica中使用WhenEvent求解微分方程

WhenEvent[event,action]指定当事件event触发时,方程在 NDSolve 及相关函数中执行的操作action。 模拟一个每次弹起后保持95%速度的弹跳球 NDSolve[{y[t] -9.81, y[0] 5, y[0] 0, WhenEvent[y[t] 0, y[t] -> -0.95 y[t]]}, y, {t, 0, 10}]; Plot[y[t] /. %…

Nature:多模态大模型LLMs如何驱动多组学与生命科学研究新范式?

高通量组学技术的快速进步引发了生物数据的爆炸式增长,远超当前对分子层面规律的解析能力。在自然语言处理领域,大语言模型(LLMs)通过整合海量数据构建统一模型,已显现突破数据困境的潜力。 Nature的这篇文章中&#x…

ubuntu20.04安装教程(图文详解)

Ubuntu 24.04 LTS,代号 Noble Numbat,于 2024 年 4 月 25 日发布,现在可以从 Ubuntu 官方网站及其镜像下载。此版本将在 2029 年 4 月之前接收为期五年的官方安全和维护更新。 关于 Ubuntu 24.04 LTS 的一些关键点: 发布日期&am…

Linux中Shell脚本的常用命令

一、设置主机名称 1、通过修改系统文件来修改主机名称 [rootsakura1 桌面]# vim /etc/hostname sakura /etc/hostname:Linux 系统中存储主机名的配置文件。修改完文件后,在当前的shell中是不生效的,需要关闭当前shell后重新开启才能看到效…

Redisson学习专栏(二):核心功能深入学习(分布式锁,分布式集合,原子操作与计数器,事件与监听)

本文是“Redisson学习专栏”第二篇,聚焦其核心分布式功能实现原理与最佳实践 文章目录 前言:分布式系统核心能力实践一、分布式锁:高并发下的守卫者1.1 可重入锁 (Reentrant Lock)1.2 公平锁 (Fair Lock)1.3 联锁 (MultiLock)1.4 红锁 (RedLo…

学习路之PHP--easyswoole_panel安装使用

学习路之PHP--easyswoole_panel安装使用 一、新建文件夹二、安装三、改配置地址四、访问 IP:Port 自动进入index.html页面 一、新建文件夹 /www/wwwroot/easyswoole_panel 及配置ftp 解压easyswoole_panel源码 https://github.com/easyswoole-panel/easyswoole_panel 二、安…

基于分布式状态机的集装箱智能道口软件架构方法

集装箱码头对进出场道口的通过能力始终是要求最高的,衡量道口的直接指标为道口通行效率,道口通行效率直接体现了集装箱码头的作业效率以及对外服务水平,进而直接影响到码头的综合能力。所以,码头普遍使用智能道口实现24小时无人值…

2014药柜设计问题

1 题目描述 D题 储药柜的设计 储药柜的结构类似于书橱,通常由若干个横向隔板和竖向隔板将储药柜分割成若干个储药槽(如图1所示)。为保证药品分拣的准确率,防止发药错误,一个储药槽内只能摆放同一种药品。药品在储药槽中的排列方式如图2所示。…

c# 获取电脑 分辨率 及 DPI 设置

using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Runtime.InteropServices;/// <summary> /// 这个可以 /// </summary> class Program {static void Main(){//设置DPI感知try{SetProcessDpiAwareness(…

2025年渗透测试面试题总结-匿名[校招]红队攻防工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 匿名[校招]红队攻防工程师 1. 00截断的原理 2. Java回显通用思路及JDK差异 3. Redis利用姿势及环境差异 …

高级数据结构与算法期末考试速成记录

高级数据结构与算法期末考试速成记录 0.分治中的一些知识点 Master公式&#xff08;又称主定理&#xff0c;Master Theorem&#xff09;是一种用于快速求解分治递归算法时间复杂度 的数学工具&#xff0c;适用于递归式形如以下形式的算法&#xff1a; T ( n ) a T ( n b ) …

Telerik生态整合:Kendo UI for Angular组件在WinForms应用中的深度嵌入(一)

Telerik DevCraft包含一个完整的产品栈来构建您下一个Web、移动和桌面应用程序。它使用HTML和每个.NET平台的UI库&#xff0c;加快开发速度。Telerik DevCraft提供完整的工具箱&#xff0c;用于构建现代和面向未来的业务应用程序&#xff0c;目前提供UI for ASP.NET MVC、Kendo…