如何基于java隨機獲取不重復數(shù)值
更新時間:2020年09月18日 09:09:56 作者:八英里
這篇文章主要介紹了如何基于java隨機獲取不重復數(shù)值,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
假如我有一個數(shù)組:
ArrayList<Integer> mArrayList = new ArrayList<Integer>();
mArrayList.add(0);
mArrayList.add(1);
mArrayList.add(2);
mArrayList.add(3);
我需要從中隨機抽取2個數(shù) 不能重復抽取,我就會用這個方法
public void getValue(ArrayList<Integer> mArrayList){ Random mRandom = new Random(); int a = mRandom.nextInt(mArrayList.size()); int value = mArrayList.get(a); System.out.println(value + ""); mArrayList.remove(a); }
原理就是每抽取一次就刪除已經(jīng)抽取出來的值,這樣獲取到的值就不會重復了
完整代碼:
package com.xiaoqiu.test; import java.util.ArrayList; import java.util.Random; public class Test { public static void main(String[] args) { ArrayList<Integer> mArrayList = new ArrayList<Integer>(); mArrayList.add(0); mArrayList.add(1); mArrayList.add(2); mArrayList.add(3); Test mTest = new Test(); mTest.getValue(mArrayList); mTest.getValue(mArrayList); } public void getValue(ArrayList<Integer> mArrayList){ Random mRandom = new Random(); int a = mRandom.nextInt(mArrayList.size()); int value = mArrayList.get(a); System.out.println(value + ""); mArrayList.remove(a); } }
測試結(jié)果:
3
2
3
0
2
3
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
TreeSet詳解和使用示例_動力節(jié)點Java學院整理
TreeSet是一個有序的集合,它的作用是提供有序的Set集合。這篇文章主要介紹了TreeSet使用示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05Java API如何實現(xiàn)向Hive批量導入數(shù)據(jù)
這篇文章主要介紹了Java API如何實現(xiàn)向Hive批量導入數(shù)據(jù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07