Java常用类库:Math类

news2025/1/20 13:24:32

在Java编程语言中,`java.lang.Math`类提供了一系列用于执行基本数学运算的静态方法。这些方法允许你执行各种数学计算,如三角函数、指数函数、对数函数、取整函数等。在本教程中,我们将介绍Math类的常用方法及其用法。

常用方法

以下是Math类中一些常用的静态方法:

1. 数学运算方法:

- `abs(double a)`:返回指定数字的绝对值。

- `max(double a, double b)`:返回两个数中较大的那个数。

- `min(double a, double b)`:返回两个数中较小的那个数。

- `pow(double a, double b)`:返回指定数字的指定次幂。

- `sqrt(double a)`:返回指定数字的平方根。

2. 取整方法:

- `ceil(double a)`:返回大于等于参数的最小整数。

- `floor(double a)`:返回小于等于参数的最大整数。

- `round(double a)`:将参数四舍五入为最接近的整数。

3. 三角函数:

- `sin(double a)`:返回角度的正弦值。

- `cos(double a)`:返回角度的余弦值。

- `tan(double a)`:返回角度的正切值。

- `asin(double a)`:返回角度的反正弦值。

- `acos(double a)`:返回角度的反余弦值。

- `atan(double a)`:返回角度的反正切值。

4. 指数和对数函数:

- `exp(double a)`:返回自然数e的参数次幂。

- `log(double a)`:返回参数的自然对数(以e为底)。

- `log10(double a)`:返回参数的以10为底的对数。

使用示例

以下是Math类的一些常见用法示例:

public class Main {
    public static void main(String[] args) {
        double a = 10.5;
        double b = 5.7;

        // 数学运算方法
        System.out.println("Absolute value of a: " + Math.abs(a));
        System.out.println("Maximum of a and b: " + Math.max(a, b));
        System.out.println("Minimum of a and b: " + Math.min(a, b));
        System.out.println("a raised to the power of b: " + Math.pow(a, b));
        System.out.println("Square root of a: " + Math.sqrt(a));

        // 取整方法
        System.out.println("Ceiling of a: " + Math.ceil(a));
        System.out.println("Floor of a: " + Math.floor(a));
        System.out.println("Rounded value of a: " + Math.round(a));

        // 三角函数
        double angle = 45.0;
        System.out.println("Sine of " + angle + " degrees: " + Math.sin(Math.toRadians(angle)));
        System.out.println("Cosine of " + angle + " degrees: " + Math.cos(Math.toRadians(angle)));
        System.out.println("Tangent of " + angle + " degrees: " + Math.tan(Math.toRadians(angle)));

        // 指数和对数函数
        System.out.println("Exponential value of a: " + Math.exp(a));
        System.out.println("Natural logarithm of a: " + Math.log(a));
        System.out.println("Base-10 logarithm of a: " + Math.log10(a));
    }
}

这些方法可以在数学计算、科学工程、游戏开发等各种领域中发挥作用。通过熟练掌握Math类的使用方法,你可以更高效地进行数学运算和数据处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1496003.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

线性代数 --- 特征值与特征向量

特征值与特征向量 已知任意向量x,现有矩阵A对x进行操作后,得到新的向量Ax。这就好比是自变量x与函数f(x)的关系一样,向量x通过类似“函数”的处理得到了一个新的向量Ax。这个新的向量可能和原向量x方向相同,也可能不同(事实上大多…

1911_野火FreeRTOS教程阅读笔记_请求任务切换

1911_野火FreeRTOS教程阅读笔记_请求任务切换 全部学习汇总: g_FreeRTOS: FreeRTOS学习笔记 (gitee.com) 还有一部分任务切换请求的代码没有分析。 实现上是一个宏定义,实现的工作主要的核心点还是请求PendSV的exception。当这个调用的时候,下…

基于AM62X+FPGA/MCU的B码对时定制化整机解决方案

什么是IRIG-B码对时 IRIG-B(inter-range instrumentationgroup-B)码是一种时间同步标准,通常用于精确的时间测量和数据同步,广泛应用于电力、通信、航空等领域。 IRIG-B码为每秒一帧的时间串码,一帧串码中包含100个码元,频率为1K…

STM32控制气泵和电磁阀实现

一、功能简介 使用STM32控制气泵和电磁阀的开和关,气泵和电磁阀的供电电压为12V。 二、实现过程 1、气泵和电磁阀的开和关均为开关量,实现控制方法有多种,比如继电器,但是继电器动作有噪声且体积较大,更好的方法为使…

【YARN】详解 YARN 中的 ResourceManager

详解 YARN 中的 ResourceManager 1.ResourceManager 核心功能2.通信(与三个角色通信)3.模块简介3.1 用户交互模块3.2 NM 管理模块3.3 AM 管理模块3.4 Application 管理模块3.5 状态机模块3.6 安全模块3.7 资源分配模块 4.模块详解​​4.1 用户交互模块4.…

如何使用ArcGIS Pro进行坡度分析

坡度分析是地理信息系统中一种常见的空间分析方法,用于计算地表或地形的坡度,这里为大家介绍一下如何使用ArcGIS Pro进行坡度分析,希望能对你有所帮助。 数据来源 教程所使用的数据是从水经微图中下载的DEM数据,除了DEM数据&…

一般情况下使用耳机壳UV树脂制作耳机壳的成本是多少?

一般情况下使用耳机壳UV树脂制作耳机壳的成本是多少? 使用耳机壳UV树脂制作耳机壳的成本主要包括材料成本、加工成本和其他附加成本。 材料成本主要取决于所采购的UV树脂的数量和单价。如果购买数量较大,单价可能会较低。市场上不同品牌和型号的UV树脂…

ubuntu 20.04 安装 huggingface transformers 环境

1. 安装 cuda 大多数新发布的大语言模型使用了较新的 PyTorch v2.0 版本,Pytorch 官方认为 CUDA 最低版本是 11.8 以及匹配的 GPU 驱动版本。详情见Pytorch官方 如下图: 1.1 下载 cuda cuda 12.1 官方网站: 下载: $wget htt…

部署LVS负载均衡架构

目录 一、ipvsadm 工具 二、NAT模式下部署LVS负载均衡 1、部署NFS共享存储服务器 1.1 安装NFS软件 1.2 新建共享目录和站点文件 1.3 设置共享策略 2、部署节点服务器1 2.1 安装并启动nginx软件 2.2 挂载共享目录到网页站点目录 2.3 修改网关 3、部署节点服务器2 3.…

【网络应用层协议】【MQTT】详解消息队列遥测传输协议MQTT(超详细)

目录 1. MQTT 协议简介 2. MQTT 的特点 3. MQTT 协议原理 4. MQTT协议中的订阅、主题、会话 1. MQTT 协议简介 MQTT( Message Queuing Telemetry Transport,消息队列遥测传输协议 )是一种消息列队传输协议,采用订阅、发布机制&…

coqui-ai/TTS 案例model文件

GitHub - coqui-ai/TTS: 🐸💬 - a deep learning toolkit for Text-to-Speech, battle-tested in research and production Coqui AI的TTS是一款开源深度学习文本转语音工具,以高质量、多语言合成著称。它提供超过1100种语言的预训练模型库&…

递增三元组(第九届蓝桥杯)

文章目录 题目原题链接思路分析二分做法1二分做法2双指针做法前缀和解法 题目 原题链接 递增三元组 思路分析 由时间复杂度可知需要至少优化到 O ( n l o g n ) O(nlogn) O(nlogn)才行 而纯暴力枚举三个数组的话: O ( n 3 ) O(n^3) O(n3) 可以考虑将b[]作为标志&…

onlyoffice监听https

修改onlyoffice 在开始将您的ONLYOFFICE Docs切换到HTTPS协议之前,您需要创建一个安全证书和证书私钥。将它们放到安装ONLYOFFICE Docs的计算机上的一个文件夹中。 获得证书后,请执行以下步骤: 所有命令都应以管理员权限执行。要以管理员身份…

【HTML】HTML基础7.3(自定义列表)

目录 标签 效果 代码 注意 标签 <dl> <dt>自定义标题</dt><dd>内容1</dd><dd>内容2</dd><dd>内容3</dd> 。。。。。。 </dl> 效果 代码 <dl><dt>蜘蛛侠系列</dt><dd>蜘蛛侠1</dd…

如何远程连接服务?

"天联"是一种远程连接服务&#xff0c;可以实现异地统一管理、随时随地协同办公和远程数据采集管理等功能。 1. 零售、收银软件应用实现异地统一管理 在医药、餐饮、商超等零售行业中&#xff0c;经常需要对分布在不同地点的店铺进行管理。"天联"提供了远…

计算机组成原理-微程序控制器实验——沐雨先生

一、实验目的 1.掌握微程序控制器的组成原理和工作过程。 2.理解微指令和微程序的概念,理解微指令与指令的区别与联系。 3.掌握指令操作码与控制存储器中微程序的对应方法&#xff0c;熟悉根据指令操作码从控制存储器中读出微程序的过程。 二、实验要求 1.做好实验预习&am…

《教育知识与能力》中教师资格证笔试黄金卷(二)

1&#xff0e;古希腊古典时代教育中&#xff0c;以雄辩和与青年智者的问答法而著名的教育家是&#xff08;A &#xff09;。 A&#xff0e;苏格拉底 B&#xff0e;柏拉图C&#xff0e;亚里士多德D&#xff0e;昆体良 2&#xff0e;世界上不同民族的教育往往表现出不同的传统和特…

学习 考证 帆软 FCP-FineBI V6.0 心得

学习背景&#xff1a; 自2024年1月起&#xff0c;大部分时间就在家里度过了&#xff0c;想着还是需要充实一下自己&#xff0c;我是一个充满热情的个体。由于之前公司也和帆软结缘&#xff0c;无论是 Fine-Report 和 Fine-BI 都有接触3年之久&#xff0c;但是主要做为管理者并…

Spark(2)-基础tranform算子(一)

一、算子列表 编号名称1map算子2flatMap算子3filter算子4mapPartitions算子5mapPartitionsWithIndex算子6keys算子7values算子8mapValues算子9flatMaplValues算子10union算子11reducedByKey算子12combineByKey算子13groupByKey算子14foldByKey算子15aggregateByKey算子16Shuff…

内含资料下载丨黄东旭:2024 现代应用开发关键趋势——降低成本、简化架构

作为一名工程师和创业者&#xff0c;创办 PingCAP 是我进入创新世界的一次深潜。这段旅程既有令人振奋的发现&#xff0c;也充满令人生畏的不确定性。作为这次探险之旅见证的 TiDB &#xff0c;现在已在全球服务超过 3000 家企业&#xff0c;其中有已经实现了商业成功的大公司&…