Java实用类(五) -Math类和指定范围的随机数

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

文章标签:

原文连接:https://www.cnblogs.com/xiaoqigui/p/16407732.html

相关推荐

保证接口数据安全的10种方式

IntelliJ IDEA、.NET 工具变贵,JetBrains 宣布全家桶涨价!

在高并发情况下我是这样解决单用户超领优惠券问题

Kotlin 和 Java 泛型的局限性、泛型擦除、星投影

Spring全面详解(学习总结)

面试官: 同步容器和并发容器有用过吗? 说说看

几行代码搞定 Spring Cloud OAuth2 授权码模式3个页面定制

【面试高频题】难度 1.5\u002F5,数据结构运用题

Java 处理 Excel:从 POI 到 SPL

【FAQ】华为帐号服务报错 907135701的常见原因总结和解决方法

2022年中总结 | 🛳🪝放弃央企的offer,为什么我不后悔,7年掘金伴我成长🚩⊄

RxJava 系列九:线程切换的源码分析

Mysql 窗口函数

一个人一双手写一个国产stackoverflow-【BSolver】

【云原生】微服务之Feign的介绍与使用

关于JavaScript中强制类型转换的小总结

聊聊支付流程的设计与实现逻辑

链表设计与Java实现,手写LinkedList这也太清楚了吧!!!

556. 下一个更大元素 III : 简单构造模拟题

Gridview出现滚动条,组件冲突,如何解决