java訂單號生成算法 java如何從100個數(shù)中隨機(jī)獲得若干個不重復(fù)的數(shù)?
java如何從100個數(shù)中隨機(jī)獲得若干個不重復(fù)的數(shù)?對于隨機(jī)對象,在數(shù)組中放入100個數(shù)字,然后傳遞隨機(jī)。下一個(100)生成隨機(jī)下標(biāo)。如果重復(fù),則重新生成隨機(jī)下標(biāo)~]/**n隨機(jī)指定范圍內(nèi)的非重復(fù)數(shù)
java如何從100個數(shù)中隨機(jī)獲得若干個不重復(fù)的數(shù)?
對于隨機(jī)對象,在數(shù)組中放入100個數(shù)字,然后傳遞隨機(jī)。下一個(100)生成隨機(jī)下標(biāo)。如果重復(fù),則重新生成隨機(jī)下標(biāo)
~]/**n隨機(jī)指定范圍內(nèi)的非重復(fù)數(shù)*最簡單最基本的方法*@param min指定范圍內(nèi)的最小值*@param Max指定范圍內(nèi)的最大值*@param n隨機(jī)數(shù)的個數(shù)*/public static int[]randomcomon(int min,intmax,int n){if(n>(max-min 1)| | max< min){return null}int[]result=new int[n]int count=0 while(count< n){int num=(int)(數(shù)學(xué).隨機(jī)()*(max-min)min boolean flag=true for(int j=0 j< n j){如果(num==result[j]){flag=false break}}如果(flag){result[count]=num count}返回結(jié)果}