您的位置:首頁技術文章
文章詳情頁

如何基于java隨機獲取不重復數值

瀏覽:72日期:2022-08-24 13:26:43

假如我有一個數組:

ArrayList<Integer> mArrayList = new ArrayList<Integer>();mArrayList.add(0);mArrayList.add(1);mArrayList.add(2);mArrayList.add(3);

我需要從中隨機抽取2個數 不能重復抽取,我就會用這個方法

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

原理就是每抽取一次就刪除已經抽取出來的值,這樣獲取到的值就不會重復了

完整代碼:

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

測試結果:

3

2

3

0

2

3

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
国产综合久久一区二区三区