溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

利用Java實現(xiàn)一個雙色球抽獎的隨機算法

發(fā)布時間:2020-11-21 16:05:35 來源:億速云 閱讀:152 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關(guān)利用Java實現(xiàn)一個雙色球抽獎的隨機算法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

原理如下:

1首先初始化一個待抽獎的數(shù)組nums,數(shù)組的長度k

2. 隨機一個1-k之間的隨機數(shù),得到nums【k】,這樣得到第一個抽獎號,nums中剔除該號碼,k--。

3. 重復步驟2,直到得到全部中獎號碼

class myLuck 
{    
  private int mTarget;  
  List<Integer> mNums = new ArrayList<Integer>(); //搖獎池
  
  ///從多少個數(shù)中產(chǎn)生多少個數(shù)
  ///例如 33選6 則Source=33,Target=6;
  myLuck(int vSource,int vTarget) {    
    for (int i = 1; i <=vSource ; i++) {      
      mNums.add(i);
    }
    mTarget=vTarget;
  }
  
  public String GetNums()
  {    
    String xString="";
    for (int i =0;i<mTarget; i++) 
    {
      int _index=(int)(Math.random()* mNums.size());
      xString+=mNums.get(_index)+" ";
      //System.out.print("("+(_index+1)+")"+mNums.get(_index)+"-");  
      //如何刪除一個元素
      mNums.remove(_index);
    }  
    return xString;
  }  
}

調(diào)用方式如下:

myLuck _red=new myLuck(33, 6);  
myLuck _blue=new myLuck(16,1);
String Str =_red.GetNums() +","+_blue.GetNums();

看完上述內(nèi)容,你們對利用Java實現(xiàn)一個雙色球抽獎的隨機算法有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI