java从给定的数据中随机选择一定量的数据

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangjingao/article/details/80331374

java从给定的数据中随机产生一定量不重复的数据

思路简单。
首先保证不重复,使用set集合存储就可以了。利用set集合的不重复特性判断重复与否。如果数据set集合中已经存在,set不会重复存储。

其次使用数组或集合存放给定数据,用生成的随机数作为下标从数组或集合中取出数据,放入set。
上代码:


import java.util.HashSet;
import java.util.Random;
import java.util.Set;

public class Main {

    public static void main(String[] args) {
        int len = 5; //想要保留的数据量
        int[] nums = { 15,21,31,44,56,67,78,84,92,1330};
        Set<Integer> set = new HashSet<Integer>();
        Random random = new Random();
        int i = 0;
        while (true) {
            i = random.nextInt(nums.length);
            set.add(nums[i]);
            if(set.size()>=len){
                break;
            }
        }
        for (int ran: set) {
            System.out.println(ran);
        }
    }
}
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页