1、Math类

java.lang.Math类提供了常用的数学运算方法和两个静态常量E(自然对数的底数) 和PI(圆周率)
// 绝对值
System.out.println(Math.abs(-3.5)); // 3.5
// 最大值
System.out.println(Math.max(2.5, 90.5));// 90.5
// 随机数
int random = (int) (Math.random() * 10); // 生成一个0-10之间的随机数
// 四舍五入
System.out.println(Math.round(3.45)); // 3
System.out.println(Math.round(3.55)); // 4
// 向上取整(取大于当前数的最小整数)
System.out.println(Math.ceil(3.25)); // 4.0
// 向下取整(取小于当前数的最大整数)
System.out.println(Math.floor(3.25)); // 3.0
注:Math类方法很多,需要使用直接看API文档即可,不需要全部掌握

2、Random类 -- java.util.Random类

//简单介绍使用示例,不需要全部掌握,用到时候查下文档即可
// 创建一个Random对象
Random rand=new Random();
for(int i=0; i<20; i++){
// 随机生成20个随机整数,并显示
int num=rand.nextInt(10);// 返回下一个伪随机数,整型的
System.out.println("第"+(i+1)+"个随机数是:"+num);
}

运行结果

第1个随机数是:4
第2个随机数是:8
第3个随机数是:5
第4个随机数是:3
第5个随机数是:1
第6个随机数是:1
第7个随机数是:1
第8个随机数是:8
第9个随机数是:8
第10个随机数是:7
第11个随机数是:5
第12个随机数是:7
第13个随机数是:9
第14个随机数是:4
第15个随机数是:0
第16个随机数是:5
第17个随机数是:0
第18个随机数是:3
第19个随机数是:8
第20个随机数是:9

3、生成指定范围的随机数

(int)(a + Math.random() * b )——>[a,a + b)

//(int)(a + Math.random() * b )——[a,a + b)
//4~9-->(int)(4 + Math.random() * (10-4)) )——[4,10)
for (int i = 0; i < 20; i++) {
int RandomNum = 0;
//生成0~9的随机整数
RandomNum = (int)( 4+Math.random() * (10-4));
System.out.println("生成的随机数为:"+ RandomNum);
}

运行结果

生成的随机数为:7
生成的随机数为:8
生成的随机数为:6
生成的随机数为:9
生成的随机数为:4
生成的随机数为:5
生成的随机数为:6
生成的随机数为:4
生成的随机数为:6
生成的随机数为:5
生成的随机数为:5
生成的随机数为:6
生成的随机数为:6
生成的随机数为:9
生成的随机数为:5
生成的随机数为:4
生成的随机数为:4
生成的随机数为:7
生成的随机数为:6
生成的随机数为:5

Java实用类(五) -Math类和指定范围的随机数的更多相关文章

  1. Java数学函数Math类

    Java数学函数Math类常用: Math.abs(12.3); //12.3 返回这个数的绝对值 Math.abs(-12.3); //12.3 Math.copySign(1.23, -12.3) ...

  2. 带有静态方法的类(java中的math类)

    带有静态方法的类通常(虽然不一定是这样)不打算被初始化. 可以用私有构造函数来限制非抽象类被初始化. 例如,java中的math类.它让构造函数标记为私有,所以你无法创建Math的实例.但Math类却 ...

  3. Java常用API(Math类)

    Java常用API(Math类) Math类的作用 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且 ...

  4. 6.算法竞赛中的常用JAVA API :Math类(转载)

    6.算法竞赛中的常用JAVA API :Math类 求最值 最小值 Math.min(int a, int b) Math.min(float a, float b) Math.min(double ...

  5. JAVA Number与Math类

    Number类: 当要用到数字的时候,我们除了使用内置数据类型byte,int,double等来声明,我们还把它声明为一个对象: 所有的包装类(Integer.Long.Byte.Double.Flo ...

  6. Java 常用对象-Math类

    2017-11-02 21:26:18 Math类:Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. *属性摘要 *常用方法 random() : 返回[0.0,1.0 ...

  7. java基础23 Math类和Random类

    一.Math数学类 主要是提供很多数学的公式 1.1.Math类的常用方法 abs(int a):绝对值   ceil(double a):向上取整   floor(double a):向下取整   ...

  8. Java学习--使用 Math 类操作数据

    使用 Math 类操作数据 Math 类位于 java.lang 包中,包含用于执行基本数学运算的方法, Math 类的所有方法都是静态方法,所以使用该类中的方法时,可以直接使用类名.方法名,如: M ...

  9. Java学习之Math类理解

    Math类包含用于几何和三角运算的所有浮点函数,以及一些用于通用目的的方法.Math类定义了两个double常量:E(约等于2.72)和PI(约等于3.14) 1.三角函数 表中的方法接收double ...

随机推荐

  1. C++STL 中的数值算法(iota、accumulate、adjacent_difference、inner_product、partial_sum)

    以下算法均包含在头文件 numeric 中 ##1.iota 该函数可以把一个范围内的序列从给定的初始值开始累加 先看用法. 例: 假设我需要一个长度为10,从5开始递增的序列 vector<i ...

  2. java过滤器拦截器的执行时机

    https://www.cnblogs.com/shamo89/p/8534580.html https://www.cnblogs.com/juanzila/p/11276067.html

  3. 如何为我的VUE项目编写高效的单元测试--Jest

    Unit Testing(单元测试)--Jest 一个完整的测试程序通常由几种不同的测试组合而成,比如end to end(E2E)测试,有时还包括整体测试.简要测试和单元测试.这里要介绍的是Vue中 ...

  4. Codeforces Round #700 (Div. 2) --- B(思维)

    传送门 有必要提醒自己一下, 先把题读利索了(手动捂脸) 题目 B. The Great Hero   The great hero guards the country where Homer li ...

  5. 2021.11.16 P2375 [NOI2014] 动物园(EXKMP+差分)

    2021.11.16 P2375 [NOI2014] 动物园(EXKMP+差分) https://www.luogu.com.cn/problem/P2375 题意: PS:这道神题的背景让人疑惑,重 ...

  6. qt在linux下引用x11库编译错误的解决办法

    首先安装x11的开发包,以debian9为例:sudo apt install xorg-dev这个解决.h头文件和.a库文件在qt的.pro文件中加入:LIBS += -lX11这个解决连接错误,注 ...

  7. Spring 源码(3)Spring BeanFactory 是怎么创建的?

    Spring创建 BeanFactory 的方式 按照Bean的配置方式手动创建可以分为两种: 使用XMl配置的Bean 这种方式使用xml配置文件配置Bean的信息并且设置扫描的路径,扫描到的包可以 ...

  8. 攻防世界-MISC:base64stego

    这是攻防世界新手练习区的第十一题,题目如下: 点击下载附件一,发现是一个压缩包,点击解压,发现是需要密码才能解密 先用010editor打开这个压缩包,这里需要知道zip压缩包的组成部分,包括压缩源文 ...

  9. 关于控制台报错“Cannot use import statement outside a module”问题的解决

    问题还原: 1.首先在main.js里 使用ES6语法import引入另外一个js模块. 2.此时将main.js在index.html中通过script标签引入,如下 3.右键通过vscode提供的 ...

  10. .NET混合开发解决方案14 WebView2的基本身份验证

    系列目录     [已更新最新开发文章,点击查看详细] WebView2控件应用详解系列博客 .NET桌面程序集成Web网页开发的十种解决方案 .NET混合开发解决方案1 WebView2简介 .NE ...