常用Java API:Math类
求最值
最小值
Math.min(int a, int b)
Math.min(float a, float b)
Math.min(double a, doubleb)
Math.min(long a, long b)
最大值
Math.max(int a, int b)
Math.max(float a, float b)
Math.max(double a, doubleb)
Math.max(long a, long b)
Math.min() 和 Math.max() 方法分别返回一个最小值和一个最大值。
实例:
public class Main{
public static void main(String[] args){
int a = 10;
int b = 20;
System.out.println(Math.min(a, b));
System.out.println(Math.max(a, b));
}
}
求平方根
Math.sqrt(double a)
返回正确舍入的 double 值的正平方根。
求绝对值
Math.abs(double a)
Math.abs(int a)
Math.abs(flota)
Math.abs(long)
返回一个类型和参数类型一致的绝对值
public class Main{
public static void main(String[] args){
int a = -10;
System.out.println(Math.abs(a));
}
}
求幂(a^b)
Math.pow(double a, double b)
注意无论是传入int还是long都会返回一个double类型的数。
实例:
所以要求int类型的幂时,要对结果进行类型转换。
取整
Math.ceil(double x)
向上取整,返回大于该值的最近 double 值System.out.println(Math.ceil(1.4)); // 2.0
System.out.println(Math.ceil(-1.6)); // -1.0
Math.floor(double x)
向下取整,返回小于该值的最近 double 值System.out.println(Math.floor(1.6)); // 1.0
System.out.println(Math.floor(-1.6)); // -2.0
Math.round(double x);
四舍五入取整System.out.println(Math.round(1.1)); // 1
System.out.println(Math.round(1.6)); // 2
System.out.println(Math.round(-1.1)); // -1
System.out.println(Math.round(-1.6)); // -2
得到一个随机数
Math.random()
生成一个[0,1)之间的double类型的伪随机数
所以为了得到一个[1, b] 之间的整数可以这样做:
int a = (int)(Math.random()*b + 1); // [1, b]
如果要得到[a, b]的一个整数则是:
int a = (int)(Math.random()*(b - a + 1) + a)
// + 1 是因为random()最大取不到1,所以上限取整后就会少1.
三角函数
- Math.cos(double a) 余弦
- Math.acos(double a) 反余弦
- Math.sin(double a) 正弦值
- Math.asin(double a) 反正弦值
- Math.tan(double a) 正切值
- Math.atan(double a) 反正切
我们可以用acos()方法求π
因为
cos(π) = -1
所以
acos(-1) = π
常用Java API:Math类的更多相关文章
- Java API —— Math类
1.Math类概述 Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. 2.成员变量 public static final doubl ...
- Java常用API(Math类)
Java常用API(Math类) Math类的作用 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且 ...
- 6.算法竞赛中的常用JAVA API :Math类(转载)
6.算法竞赛中的常用JAVA API :Math类 求最值 最小值 Math.min(int a, int b) Math.min(float a, float b) Math.min(double ...
- 算法竞赛中的常用JAVA API :大数类(转载)
5.算法竞赛中的常用JAVA API :大数类 摘要 java中的基础数据类型能存储的最大的二进制数是 2 ^ 63 - 1 对应的十进制数是9223372036854775807(long类型的最大 ...
- 8.算法竞赛中的常用JAVA API :Calendar日期类
8.算法竞赛中的常用JAVA API :Calendar日期类 摘要 在蓝桥杯中有关于日期计算的问题,正好java中的Date类和Calendar类提供了对日期处理的一些方法.Date类大部分方法已经 ...
- Java中math类的常用函数
Java中math类的常用函数 在 Java 中 Math 类封装了常用的数学运算,提供了基本的数学操作,如指数.对数.平方根和三角函数等 只要在源文件的顶部加上下面这行代码就不必在数学方法名和常量名 ...
- Java-Runoob:Java Number & Math 类
ylbtech-Java-Runoob:Java Number & Math 类 1.返回顶部 1. Java Number & Math 类 一般地,当需要使用数字的时候,我们通常使 ...
- Java之Math类
概述 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且不会创建对象,调用起来非常简单. 基本运算的方 ...
- 常用Java API之Ramdom--用代码模拟猜数小游戏
常用Java API之Ramdom Ramdom类用来生成随机数字.使用起来也是三个步骤: 1.导包 import java.util.Random; 2.创建 Random r = new Rand ...
- 常用Java API之Scanner:功能与使用方法
Scanner 常用Java API之Scanner:功能与使用方法 Scanner类的功能:可以实现键盘输入数据到程序当中. 引用类型的一般使用步骤:(Scanner是引用类型的) 1.导包 imp ...
随机推荐
- python模块--calendar
方法 返回值类型 说明 .calendar(theyear, w=2, l=1, c=6, m=3) str 返回指定年份的年历, w: 每个日期的宽度, l: 每一行的纵向宽度, c: 月与月之间的 ...
- 处理burp log 小脚本
burp 日志保存 保存的日志格式为 将日志中的数据包 每个数据包保存到一个单独的txt里面 然后可以控制目录放进不同的目录中 #coding=utf-8 import re import os de ...
- WPF WPF中解决内存泄露的几点提示与解决方法
http://www.cnblogs.com/LastPropose/archive/2011/08/01/2124359.html 一直以来用WPF做一个项目,但是开发中途发现内存开销太大,用ANT ...
- PHP设计模式之模板方法模式
模板方法模式,也是我们经常会在不经意间有会用到的模式之一.这个模式是对继承的最好诠释.当子类中有重复的动作时,将他们提取出来,放在父类中进行统一的处理,这就是模板方法模式的最简单通俗的解释.就像我们平 ...
- redis连接密码和指定数据库
台服务器上都快开启200个redis实例了,看着就崩溃了.这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开. 那么,redis有没有什么方法使不同的应用程序数据彼此分开同时又存储在相同的实 ...
- ecshop商品批量上传之EC助理1.28支持ECshop2.7.3方法
目前官方随着ECShop V2.73的发布也发布了相对应的EC助理1.30版.默认EC助理1.28也支持到ECShop V2.72,要想让EC助理1.28也支持到ECShop V2.73,那要了解EC ...
- 记一次k8s pod频繁重启的优化之旅
关键词:k8s.jvm.高可用 1.背景 最近有运维反馈某个微服务频繁重启,客户映像特别不好,需要我们尽快看一下. 听他说完我立马到监控平台去看这个服务的运行情况,确实重启了很多次.对于技术人员来说, ...
- localStorage util
// localStorage util var db ={ set : function(key, obj){ localStorage.setItem(key, JSON.stringify(ob ...
- npm卸载appium,重新安装桌面版appium
大家好,appium环境搭建的时候,我选的是使用npm安装appium,但我在使用过程中,发现这样安装的appium没有界面,都是需要通过命令行操作,对于我来说,有点吃力.最后,还是觉得初学就先用桌面 ...
- P5369-[PKUSC2018]最大前缀和【状压dp】
正题 题目链接:https://www.luogu.com.cn/problem/P5369 题目大意 一个数列\(a\)的权值定义为\(max\{\sum_{i=1}^ka_i\}(k\in[1,n ...