当前位置: 代码迷 >> J2SE >> 机选有关问题
  详细解决方案

机选有关问题

热度:110   发布时间:2016-04-24 02:30:50.0
机选问题
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个数该有重复的可能吧
  相关解决方案