Java实现获取指定个数的不同随机数
作者:希尔伯特 时间:2023-11-14 21:42:34
两个简单的例子,代码实现如下:
1、随机拆分一个整数
public static List<Integer> randomList(int n){
Random rand = new Random();
List<Integer> list = new ArrayList<>();
int i = 0;
while (i < n) {
int num = rand.nextInt(n);
if (!list.contains(num)) {
list.add(num);
i++;
}
}
return list;
}
2、从已知列表中随机选取不同对象
public static List<Integer> randomList(int n,int size) {
Random rand = new Random();
List<Integer> list = new ArrayList<>();
int i = 1;
while (i <= n) {
int num = rand.nextInt(size-1) + 1;
if (!list.contains(num)) {
list.add(num);
i++;
}
}
return list;
}
3、把一个整数拆分成不等的几份
public static List<Integer> randomList(int n, int m){
Random rand = new Random();
List<Integer> list = new ArrayList<>();
int temp = m;
for(int i = 0, j; i < n-1; i++){
j = rand.nextInt(temp-1) + 1;
temp -= j;
list.add(j);
if (temp == 1){
break;
}
}
list.add(temp);
return list;
}
例子很简单,仅供参考。
来源:https://blog.csdn.net/weixin_35971547/article/details/85622745
标签:java,算法,随机数
0
投稿
猜你喜欢
解决IDEA鼠标点击光标变大问题
2022-12-07 11:52:37
Java重点梳理类与对象核心原理
2023-04-08 06:15:41
C#中@的用法总结
2023-03-11 10:02:51
Java代码实现微信页面滚动防露底(核心代码)
2023-11-10 13:47:08
Android快速实现断点续传的方法
2021-06-14 13:02:28
Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析
2021-12-31 21:49:14
c++难以发现的bug(有趣)
2022-01-27 17:01:41
C#实现批量Word转换Html的示例代码
2023-02-07 18:28:27
Android更多条目收缩展开控件ExpandView的示例代码
2022-07-31 18:10:24
解决idea 暂存文件或idea切换分支代码丢失的问题
2023-09-11 07:52:41
关于maven使用过程中无法导入依赖的一些总结
2021-12-16 01:51:20
Android实现简单的分批加载ListView
2023-10-28 14:49:21
Spring整合Junit的使用详解
2022-11-20 18:33:17
C#如何使用Bogus创建模拟数据示例代码
2023-10-11 10:57:50
C# 对象持久化详解
2023-06-24 10:21:47
使用springboot打包成zip部署,并实现优雅停机
2021-08-04 20:45:01
Java中常见的陷阱题及答案
2021-08-10 16:32:11
Spring mvc如何实现数据处理
2023-06-20 09:36:35
android判断一个Activity是否处于栈顶的实例
2021-06-24 18:37:39
C#执行EXE文件与输出消息的提取操作
2023-02-28 00:08:06