java中的Math.Radom拓展

常用扩展(生成指定区间数值)

这是 Math.random() 最实用的场景,通过简单公式转换即可生成任意区间的整数 / 小数:

需求场景 核心公式 代码示例(生成对应数值)
[a, b) 区间小数(a<b) Math.random() * (b - a) + a 生成 [2.0, 5.0) 小数:Math.random()*3 + 2
[a, b] 区间整数(a<b) (int)(Math.random() * (b - a + 1)) + a 生成 10~20 整数:(int)(Math.random()*11)+10
[a, b) 区间整数(a<b) (int)(Math.random() * (b - a)) + a 生成 0~9 整数:(int)(Math.ran

注意:(int)(Math.random * (b - a) + a),不带括号的话,(int)Math.random() == 0

相关推荐
君义_noip1 小时前
信息学奥赛一本通 1661:有趣的数列 | 洛谷 P3200 [HNOI2009] 有趣的数列
c++·算法·组合数学·信息学奥赛·csp-s
leaves falling2 小时前
C语言内存函数-
c语言·开发语言
程序员:钧念2 小时前
深度学习与强化学习的区别
人工智能·python·深度学习·算法·transformer·rag
数据与后端架构提升之路2 小时前
TeleTron 源码揭秘:如何用适配器模式“无缝魔改” Megatron-Core?
人工智能·python·适配器模式
英英_2 小时前
MATLAB数值计算基础教程
数据结构·算法·matlab
一起养小猫3 小时前
LeetCode100天Day14-轮转数组与买卖股票最佳时机
算法·leetcode·职场和发展
至为芯3 小时前
IP6537至为芯支持双C口快充输出的45W降压SOC芯片
c语言·开发语言
hele_two3 小时前
快速幂算法
c++·python·算法
小羊羊Python4 小时前
SoundMaze v1.0.1正式发布!
开发语言·c++
浩瀚地学4 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习