【从零开始学习JAVA | 第二十篇】常见API介绍 Math

news2024/11/15 12:15:09

目录

前言:

 MATH:

Math类中的常用方法:

总结:


前言:

                本篇往后我们会详细介绍一些常用的API,今天我们介绍的是Math的常用方法。但是其实我们不需要记住所有的方法,在日常工作中自己学会查询API文档就可以了。

 MATH:

Math类是Java中提供的一个标准类,它包含了许多常用的数学运算和常量,使用这些API可以方便地进行数学计算。

Math类中的常用方法:

1. abs函数:返回一个数的绝对值。它有两个版本,一个用于整数,另一个用于浮点数。

public class MathDemo {
    public static void main(String[] args) {
        int x = -5;
        double y = -2.75;

        int abs_x = Math.abs(x);
        double abs_y = Math.abs(y);

        System.out.println("abs(" + x + ") = " + abs_x);
        System.out.println("abs(" + y + ") = " + abs_y);
    }
}

输出:

abs(-5) = 5
abs(-2.75) = 2.75

2. pow函数:返回一个数的指定幂。它有两个参数,第一个是底数,第二个是指数。

public class MathDemo {
    public static void main(String[] args) {
        double x = 2.0;
        int y = 3;

        double result = Math.pow(x, y);

        System.out.println(x + "^" + y + " = " + result);
    }
}

输出:

2.0^3 = 8.0

3. sqrt函数:返回一个数的平方根。

public class MathDemo {
    public static void main(String[] args) {
        double x = 16.0;

        double result = Math.sqrt(x);

        System.out.println("sqrt(" + x + ") = " + result);
    }
}

输出:

sqrt(16.0) = 4.0

4. sin,cos,tan函数:分别返回一个角的正弦、余弦和正切值。

public class MathDemo {
    public static void main(String[] args) {
        double x = 45.0 * Math.PI / 180.0;

        double sin_x = Math.sin(x);
        double cos_x = Math.cos(x);
        double tan_x = Math.tan(x);

        System.out.println("sin(" + x + ") = " + sin_x);
        System.out.println("cos(" + x + ") = " + cos_x);
        System.out.println("tan(" + x + ") = " + tan_x);
    }
}

输出:

sin(0.7853981633974483) = 0.7071067811865475
cos(0.7853981633974483) = 0.7071067811865476
tan(0.7853981633974483) = 0.9999999999999999

5. max,min函数:分别返回两个数的最大值和最小值。

public class MathDemo {
    public static void main(String[] args) {
        int x = 5;
        int y = 3;

        int max_xy = Math.max(x, y);
        int min_xy = Math.min(x, y);

        System.out.println("max(" + x + "," + y + ") = " + max_xy);
        System.out.println("min(" + x + "," + y + ") = " + min_xy);
    }
}

输出:

max(5,3) = 5
min(5,3) = 3

6. ceil,floor,round函数:分别向上取整、向下取整和四舍五入。

public class MathDemo {
    public static void main(String[] args) {
        double x = 2.75;

        double ceil_x = Math.ceil(x);
        double floor_x = Math.floor(x);
        long round_x = Math.round(x);

        System.out.println("ceil(" + x + ") = " + ceil_x);
        System.out.println("floor(" + x + ") = " + floor_x);
        System.out.println("round(" + x + ") = " + round_x);
    }
}

输出:

ceil(2.75) = 3.0
floor(2.75) = 2.0
round(2.75) = 3

7. exp函数:返回常数e的指数函数。

public class MathDemo {
    public static void main(String[] args) {
        double x = 2.0;

        double result = Math.exp(x);

        System.out.println("exp(" + x + ") = " + result);
    }
}

输出:

exp(2.0) = 7.3890560989306495

8. log函数:返回一个数的自然对数。

public class MathDemo {
    public static void main(String[] args) {
        double x = 2.0;

        double result = Math.log(x);

        System.out.println("log(" + x + ") = " + result);
    }
}

输出:

log(2.0) = 0.6931471805599453

9. ceil函数:它是将一个数字向上取整,返回结果最小的整数,可以理解为“取天花板”操作。

语法:public static double ceil(double a)

举例:如果输入的参数是2.5,则输出的结果为3.0。如果输入的参数是-2.5,则输出的结果为-2.0。

public class CeilDemo {
    public static void main(String[] args) {
        double d1 = 2.5;
        double d2 = -2.5;
        double d3 = 2.0;

        System.out.println(Math.ceil(d1));
        System.out.println(Math.ceil(d2));
        System.out.println(Math.ceil(d3));
    }
}

输出:

3.0
-2.0
2.0

10. floor函数:与ceil函数相对,它是将一个数字向下取整,返回结果最大的整数,可以理解为“取地板”操作。

语法:public static double floor(double a)

举例:如果输入的参数是2.5,则输出的结果为2.0。如果输入的参数是-2.5,则输出的结果为-3.0。

public class FloorDemo {
    public static void main(String[] args) {
        double d1 = 2.5;
        double d2 = -2.5;
        double d3 = 2.0;

        System.out.println(Math.floor(d1));
        System.out.println(Math.floor(d2));
        System.out.println(Math.floor(d3));
    }
}

输出:

2.0
-3.0
2.0

11. round函数:它是对一个数字进行四舍五入,返回结果最接近原始数字的整数, 如果距离两侧的整数一样,则返回距离较大的那个整数(例如,对1.5进行四舍五入,输出的结果是2.0)。

语法:public static long round(double a)

举例:如果输入的参数是2.4,则输出的结果是2。如果输入的参数是2.6,则输出的结果是3。

public class RoundDemo {
    public static void main(String[] args) {
        double d1 = 2.4;
        double d2 = 2.6;

        System.out.println(Math.round(d1));
        System.out.println(Math.round(d2));
    }
}

输出:

2
3

总结:

        本篇我们详细的介绍了math类中的几个常见的方法,各位只需要大概知道就好了,在实际生活中我们如果有需要可以查阅API文档。

如果我的内容对你有帮助,请点赞,评论,收藏创作不易,大家的支持就是我坚持下去的动力!

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

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

相关文章

Docker 安装 Mysql 数据库

一、官方推荐安装方式: 1、执行 docker pull mysql:5.6 命令,下载 mysql 镜像,如下所示: 2、执行命令,创建并启动 mysql 容器 docker run -d --name mysql5.6-3306 -p 3307:3306 -e MYSQL_ROOT_PASSWORD123456 mysq…

Linux tracing之内核vsyscallvdso机制分析

由于内核运行在受保护的地质空间上,Linux系统中的用户空间程序无法直接执行内核代码,不能直接调用内核空间中的函数,因此,应用程序以某种方式通知系统,告诉内核自己需要执行一function,希望系统系统切换到内…

亚马逊、沃尔玛测评防关联、防封号环境的底层技术原理

大家好我是亚马逊测评珑哥,今天我给大家讲一下做亚马逊、沃尔玛测评、采购、退款需要用到的防关联、防封号环境的一些底层技术原理。这里讲的内容我相信很少有人能掌握,都是一些比较难的IT术技。 近期很多做测评、采购、退款、撸卡、撸货的朋友加我&…

小程序代码审核新手入门篇

微信小程序在注册完成,需提交代码审核通过才能顺利发布,小程序从开发到发布的具体流程:微信小程序完成注册、信息设置、类目设置后,代码提审从开发到发布一般要经过:预览-> 上传代码 -> 提交审核 -> 发布等步…

vue axios 同步请求

创建目录scr/api/http2 创建scr/api/http2/ndex.js import axios from axiosconst url "http://xxx.com:9000/"; let data export default {apipost(uri, params) {var that this return new Promise((resolve, reject) > {axios.post(urluri, {appkey:sssa,…

NXP i.MX 8M Mini工业核心板硬件说明书(四核ARM Cortex-A53 + 单核ARM Cortex-M4,主频1.6GHz)

1 硬件资源 创龙科技SOM-TLIMX8是一款基于NXP i.MX 8M Mini的四核ARM Cortex-A53 单核ARM Cortex-M4异构多核处理器设计的高端工业级核心板,ARM Cortex-A53(64-bit)主处理单元主频高达1.6GHz,ARM Cortex-M4实时处理单元主频高达400MHz。处理器…

vim行号背景配置

没有修改前,在vim里面显示行号是这样的,背景颜色是灰色的。 在文件~/.vim/colors/bandit.vim中使用hi命令清除行号的背景. 即打开291行的注释后,:wq保存后,立刻可以看到背景颜色已经去除。

Hadoop_Yarn实践 (三) => (Yarn的基础架构、原理、容量/公平调度器、Tool接口、Yarn常用命令、核心参数)

目录 Hadoop_HDFS、Hadoop_MapReduce、Hadoop_Yarn 实践 (三)一、Hadoop_HDFS二、Hadoop_MapReduce三、Hadoop_Yarn1、Yarn资源调度1.1、基础架构1.2、Yarn的工作调度机制(Job提交过程)1.3、Yarn 调度器和调度算法1.3.1、先进先出调度器(FIFO…

【Visual Studio】报错 ASSERT: “i >= 0 i < size()“,使用 C++ 语言,配合 Qt 开发串口通信界面

知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 这个 Bug 是我做这个工程时遇到的:【Visual Studio】Qt 的实时绘图曲线功能,使用 C 语言,配合 Qt 开发串口通信界面。 文…

Python学习——字典

一、字典的定义 (1)字典也是Python内置的数据结构之一,和列表一样都是可变序列,也就是说字典也能够进行增、删、改的操作。字典是以键值对的方式存储数据的,所以在字典中包含键和值。不同于数组,字典是一个…

manjaro 设置 vscode 为默认编辑器

manjaro 现在的默认编辑器是kate 换成vscode xdg-mime default code.desktop text/plain Setting VS Code as the default text editor

接口调用参数篡改测试-业务安全测试实操(22)

接口调用参数篡改测试,接口未授权访问/调用测试 接口调用参数篡改测试 测试原理和方法 在短信、邮件调用业务环节中,例如短信验证码、邮件验证码。修改对应请求中手机号或邮箱地址参数值提交后,如果修改后的手机号或邮箱收到系统发送的信息,则表示接口数据调用参数可篡改 …

将两个数组组合成在一起np.block()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将两个数组组合成在一起 np.block() 选择题 下列说法错误的是? import numpy as np A np.array([[1, 2], [3, 4]]) print("【显示】A") print(A) B np.array([[5, 6], [7, 8]]…

在layui中使用vue,使用vue进行页面数据部分数据更新

layui是一款非常优秀的框架,使用也非常的广泛,许多后台管理系统都使用layui,简单便捷,但是在涉及页面部分数据变化,就比较难以处理,比如一个页面一个提交页,提交之后部分数据实时进行更新&#…

高级第二个月考试

1.单页面应用和多页面应用的区别及优缺点 2.写出对虚拟dom的理解 概念: 虚拟DOM其实就是用一个原生的JS对象去描述一个DOM节点,实际上它只是对真实 DOM 的一层抽象。最终可以通过一系列操作使这棵树映射到真实环境上。相当于在js与DOM之间做了一个缓存&a…

用于自动驾驶的大规模三维视觉语义地图的构建

文章:Vision-based Large-scale 3D Semantic Mapping for Autonomous Driving Applications 作者:Qing Cheng,Niclas Zeller,Daniel Cremers 编辑:点云PCL 欢迎各位加入知识星球,获取PDF论文,欢…

网络编程——Udp套接字

文章目录 1. 简单的UDP网络程序1.1 日志的打印1.2 服务端初始化1.3 启动服务器并提供服务1.4 客户端1.5 客户端发送的消息1.6 服务端的构造函数和析构函数1.7 本地测试1.8 服务端回复消息给所有客户端 1. 简单的UDP网络程序 我们把udp的协议封装成一个类。 下面我们就开始认识…

SpringBoot使用Swagger配置API接口文档

💧 概述 Swagger是一个用于设计、构建和文档化 RESTful API 的开源框架。它提供了一组工具,使得开发人员能够更轻松地定义、描述和测试API接口。 具体来说,Swagger包含以下几个核心组件: Swagger规范(Swagger Specif…

【CTF-Reverse】IDA动态调试,反调试技术

在本专栏前两篇文章中,带领大家讲解了逆向加密算法,AES,TEA,RC4,Base64加密算法,并带领大家识别各种密码算法特征,这一篇文章来带领大家学习在逆向过程中的动态调试:IDA动态调试,反调试技术。 …

5SHY3545L0016 3BHB020720R0002可控硅模块IGCT

​ 5SHY3545L0016 3BHB020720R0002可控硅模块IGCT 5SHY3545L0016 3BHB020720R0002可控硅模块IGCT 1) dcs系统往往具有丰富的自诊断功能。根据报警,可以直接找到故障点,并且还可通过报警的消除来验证维修结果。 2) 通信接头接触不良会引起通信故障,确认通信接头接触不良后,可以…