当前位置: 首页 > news >正文

【从零开始学Java | 第十五篇】常用API——Math

目录

前言

一、Math类

Math类常用的方法

二、方法的使用

1.abs(int a),获取参数的绝对值

2.ceil(double a),向上取整

3.floor(double a),向下取整

4.round(double a),四舍五入

5.max(int a, int b),min(int a, int b),获取两个整数的最大/最小值

6.pow(double a, double b),获取a的b次幂


前言

在Java中会有一些已经定义好的方法,这些方法会给我们的编程之路带来很大的便利,但是我们并不需要将这些常用的API背下来,我们只需要在使用的时候查一下Java的帮助文档即可。

一、Math类

Math是一个帮助我们进行数学计算的工具类。

工具类的一大特点:私有化构造方法,所有方法都是静态

Math类常用的方法

方法名说明
public static intabs(int a)获取参数的绝对值
public static doubleceil(double a)向上取整
public static doublefloor(double a)向下取整
public static intround(float a)四舍五入
public static intmax(int a, int b)获取两个int值中的较大值
public static doublepow(double a, double b)

返回a的b次幂的值

public static doublerandom()返回值为double的随机值,范围[0.0, 1.0)

二、方法的使用

1.abs(int a),获取参数的绝对值

public class Test { public static void main(String[] args) { System.out.println(Math.abs(99)); System.out.println(Math.abs(-99)); } }

运行结果:

注意:int类型的取值范围:-2147483648 ~2147483647,如果没有正数与复数对应,那么传递负数结果有误。

演示:

要解决这个bug,我们可以使用absExact(int a):

2.ceil(double a),向上取整

数学中的进一法,向数轴的正向进一,演示如下:

3.floor(double a),向下取整

数学中的去尾法,向数轴的负方向进一,演示如下:

4.round(double a),四舍五入

演示如下:

5.max(int a, int b),min(int a, int b),获取两个整数的最大/最小值

演示如下:

6.pow(double a, double b),获取a的b次幂

演示如下:

http://www.jsqmd.com/news/518388/

相关文章:

  • 从靶场到实战:手把手教你用xss-labs复现10种Web安全漏洞(附完整Payload)
  • 四维数据可视化总让人头疼,尤其是当属性值需要与三维坐标联动时。最近在搞电磁场仿真,被迫琢磨出一套实用技巧。直接上干货,先看这段自生成数据的代码
  • MATLAB实战:手把手教你用LMS算法实现自适应波束形成(附完整代码与避坑指南)
  • 手把手教你解决APK安装后桌面图标消失问题(附代码示例)
  • Kubernetes 集群管理新体验:图形化利器 Kuboard 实战指南
  • OpenAI Agent SDK+MCP协议避坑指南:解决工具调用常见问题
  • Windows下用PNG Debugger检测图片CRC校验的完整指南(附命令行快捷方式设置)
  • Newton-Cotes公式在数值积分中的应用与误差分析
  • 基于永磁同步电机无位置高频注入算法SVPWM控制的模型仿真及其在实验中的应用
  • Web安全实战:5种文件上传漏洞绕过技巧(附.phtml黑名单绕过案例)
  • 保姆级教程:用Android Studio CPU Profiler分析视频播放卡顿问题(含火焰图解读技巧)
  • leetcode 1461. 检查一个字符串是否包含所有长度为 K 的二进制子串-耗时96内存94
  • 你的手机拍照能打几分?聊聊SPAQ数据集与智能手机摄影质量评测那些事儿
  • 企业级NAS如何为vSphere提供高性能共享存储?ISCSI优化配置与容量监控技巧
  • 保姆级教程:用IDM+缓存目录手动安装Arduino ESP8266开发环境(附资源包)
  • 国产化替代实战:银河麒麟V10+ARM平台如何绕过Docker 18限制跑KubeSphere 3.3
  • 2023年轻量级浏览器新选择:Cent浏览器如何以68%内存占用挑战Chrome霸主地位
  • 哈工大集合论与图论慕课答案全解析(2022最新版)——附对比选项技巧
  • VS2019下用C语言手写扫雷游戏:从代码解析到实战调试(附完整源码)
  • 深入解析Ceres优化库:Problem类与LocalParameterization实战指南
  • 编写程序让智能雨伞检测到下雨湿度时,伞柄指示灯亮起,提醒带伞出门。
  • 解决:[Errno 14] curl#6 - ‘Could not resolve host: mirrors.cloud.aliyuncs.com‘ 的全面排查与修复指南
  • 保姆级教程:用OpenVINO在Intel显卡上跑通PP-OCRv5文字识别(附环境配置避坑指南)
  • 避开这5个坑!Unity EditorGUILayout开发中的常见问题解决方案
  • 信息系统管理师第四版十大知识领域速记:用故事线3天搞定49个子过程
  • Snipe-IT与MySQL外部数据库的Docker化部署避坑指南
  • Mac用户必看:用Scrcpy有线投屏安卓手机的5个隐藏技巧(附HomeBrew一键安装)
  • 从光流校准到平稳悬停:搞定匿名飞控无人机‘跑偏’问题的实战调试记录
  • 信号与系统实战:5个拉普拉斯变换典型例题解析(附MATLAB验证代码)
  • 不止是硬解:用N5095+Ubuntu搭建Jellyfin,顺便搞定SMB共享和NTFS硬盘自动挂载