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
  • asp之家 软件编程 m.aspxhome.com