Java实现获取指定个数的不同随机数

 更新时间:2019年01月04日 16:30:41   作者:希尔伯特  
今天小编就为大家分享一篇关于Java实现获取指定个数的不同随机数,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

两个简单的例子,代码实现如下:

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;
}

例子很简单,仅供参考。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • Java设计模式中的原型模式讲解

    Java设计模式中的原型模式讲解

    原型模式是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式,今天通过本文给大家介绍下Java 原型设计模式,感兴趣的朋友一起看看吧
    2023-04-04
  • SpringBoot整合Mybatis实现多数据源配置与跨数据源事务实例

    SpringBoot整合Mybatis实现多数据源配置与跨数据源事务实例

    开发中经常有这样的需要: 读写分离。微服务环境下可以实现一个服务读取一个数据库,另一个服务写库。但是在实际应用中有时也需要在一个服务中读写不同的数据库。可以在一个SpringBoot单体项目中配置多个数据源解决读写库分离
    2022-11-11
  • MyBatis Mapper代理使用方法详解

    MyBatis Mapper代理使用方法详解

    本文是小编日常收集整理的关于mybatis mapper代理使用方法知识,通过本文还给大家提供有关开发规范方面的知识点,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看下吧
    2016-08-08
  • JPA中@JoinColumn的name和referencedColumnName属性的区别及说明

    JPA中@JoinColumn的name和referencedColumnName属性的区别及说明

    这篇文章主要介绍了JPA中@JoinColumn的name和referencedColumnName属性的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Spring Boot 自动配置之条件注解浅析

    Spring Boot 自动配置之条件注解浅析

    这篇文章主要介绍了Spring Boot 自动配置之条件注解浅析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • Spring Boot 参数校验的具体实现方式

    Spring Boot 参数校验的具体实现方式

    这篇文章主要介绍了Spring Boot 参数校验的具体实现方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06
  • Mybatis 传参与排序模糊查询功能实现

    Mybatis 传参与排序模糊查询功能实现

    这篇文章主要介绍了Mybatis 传参与排序模糊查询功能实现,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2025-04-04
  • java Unicode和UTF-8之间转换实例

    java Unicode和UTF-8之间转换实例

    这篇文章主要介绍了java Unicode和UTF-8之间转换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Java中ArrayList的removeAll方法详解

    Java中ArrayList的removeAll方法详解

    这篇文章主要给大家介绍了关于Java中ArrayList的removeAll方法的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来看看吧。
    2017-07-07
  • Java Web Filter 过滤器学习教程(推荐)

    Java Web Filter 过滤器学习教程(推荐)

    Filter也称之为过滤器,它是Servlet技术中最激动人心的技术.这篇文章主要介绍了Java Web Filter 过滤器学习教程的相关资料,需要的朋友可以参考下
    2016-05-05

最新评论