Re: [問題] 1-42取出6+1個數字
※ 引述《iFEELing.bbs@ptt.cc (ing)》之銘言:
> ※ 引述《dennis.bbs@bbs.ntou.edu.tw (有女生願意跟我聊天的嗎~)》之銘言:
> : 原文怒刪
> : 用Set就可以就不會產生重複了
> : 1.把亂數產生的數值丟到Set
> : 2.檢查數目有幾個...不夠繼續產生亂數
> : 3.一直重複...直到7個數目
> 要不重複其實很簡單
> 生一個存有 1 - 42 的 array
> 然後{亂數取兩個出來交換}重覆個一兩百次
> 然後隨便抓隨便有 而且一定不會重複 = =
可以玩一下Collections :)
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
public class Lotto {
public static void main(String[] args) {
List<Integer> l = new ArrayList();
for (int i = 1; i < 42; i++) {
l.add(new Integer(i));
}
Collections.shuffle(l);
Iterator it = l.iterator();
int count = 7;
while (count-- > 1) {
System.out.print(it.next() + "\t");
}
System.out.println("\n" + it.next());
}
}
--
┌─────◆KKCITY◆─────┐ ■ KKBOX 可立刻 聽音樂 ■
│ bbs.kkcity.com.tw │ ■■所有想找的歌通通不必等 ■■
└──《From:163.26.34.105 》──┘ ■■■http://www.kkbox.com.tw■■■
--
討論串 (同標題文章)
完整討論串 (本文為第 7 之 21 篇):