日期:2014-05-20  浏览次数:20670 次

机选问题
import java.util.Random;
import java.util.Scanner;


/**
 * @author Administrator
 *
 */
public class MachineSelection {

/**
* @param args
*/
public static void main(String[] args) {

int a = 0;
   
Random r = new Random();
   
  System.out.println( "请输入36选7机选投注数量:");
  Scanner scan = new Scanner(System.in);
   
  int m=scan.nextInt();
  for (int j=1; j<=m;j++)
  {
  System.out.println(); 
  for (int i =1;i <= 7;i++)
  {
   
  a=r.nextInt(37)+1;
   
  System.out.print(a+"\t");
  }
   
  }
  }
   
   
   
  }
   
   
 
   



这些都写好了,就是不知道怎么判断所输出的七位数不重复啊!好像要用数组或者hashset吧!不会用啊!帮帮忙,很急!!!

------解决方案--------------------
http://blog.csdn.net/mengxiangyue/article/details/6882326使用HashMap

------解决方案--------------------
http://blog.csdn.net/mengxiangyue/article/details/6882326使用HashMap

------解决方案--------------------
http://blog.csdn.net/mengxiangyue/article/details/6882326使用HashMap

------解决方案--------------------
Java code

package random;

import java.util.ArrayList;
import java.util.List;

public class TestRandom
{
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<Integer>();
        for (int i = 0; i < 7; i++) {
            int num =  (int) (Math.random()*36+0);
            list.add(num);
        }
        System.out.println(list);
    }
}

------解决方案--------------------
应该是
 int num = (int) (Math.random()*37+0);

------解决方案--------------------
直接循环生成随机整数
然后往HashSet里面put
当该set的长度=7时,则为选完

PS:楼上的写法生成的7个数该有重复的可能吧
------解决方案--------------------
直接循环生成随机整数
然后往HashSet里面put
当该set的长度=7时,则为选完

PS:楼上的写法生成的7个数该有重复的可能吧