java里面获取随机数(实现java的取指定范围内的随机数)
java本身自带的随机数功能非常简单,只能获取1到bound范围内的随机数
Random random = new Random();
int index = random.nextInt(bound);
那如果要负数怎么办呢?我先放出代码,通过这一个简短几行就可以实现
// 获取一定范围内的随机数(获得值包含min和max)
public int getRandom(int min, int max) {
int length = max - min 1;
Random random = new Random();
int index = random.nextInt(length);
return min index;
}
我们再来写个测试代码
// 测试随机数
public void testRandom() {
Logger logger = AppContext.getInstance().getLogger();
logger.info("取-3到5的随机数,采样20个");
{
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < 20; i ) {
int num = MathUtil.getInstance().getRandom(-3, 5);
stringBuilder.append(num);
stringBuilder.append(" ");
}
logger.info(stringBuilder.toString());
}
logger.info("取-30到15的随机数,采样20个");
{
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < 20; i ) {
int num = MathUtil.getInstance().getRandom(-30, 15);
stringBuilder.append(num);
stringBuilder.append(" ");
}
logger.info(stringBuilder.toString());
}
}
测试结果
这其实就是利用了区间位移的方法来间接实现。
喜欢的话给个关注[送心][送心][送心],分享永不停止~
#java##编程##随机数#
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com