双色球的数组实现:
import java.util.Random;
public class ShuangSeQiu {
public static void main(String[] args) {
Random rand = new Random();
int[] red = new int[6];
//红球(无序):
for (int i = 0; i < red.length; i++) {
red[i]=(int)(rand.nextInt(33)+1);
for (int j = 0; j < i; j++) {
if(red[i]==red[j]){
i--;
}
}
}
//冒泡
for (int i = 0; i < red.length; i++) {
for (int j = 0; j < red.length-1-i; j++) {
int temp = red[j];
if(red[j]>red[j+1]){
red[j]= red[j+1];
red[j+1]= temp;
}
}
}
//蓝球
int blue = rand.nextInt(16)+1;
System.out.print("今日中奖号码为:");
for (int i = 0; i < red.length; i++) {
System.out.print(red[i]+",");
}
System.out.print(" + "+blue);
}
}
双色球的集合实现:
import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Random; import java.util.Set; public class ShuangSeQiu {
public static void main(String[] args){ for (int i = 0; i < 5; i++) { System.out.println(getSsq()); } } public static String getSsq(){ String ssq = ""; //解决红球问题 //创建Set集合,存储红球;使用Set集合原因是可以得到不重复的红球(“唯一性”) Set<Integer> reds = new HashSet<Integer>(); Random rand = new Random();//创建随机数对象 //获得六个不唯一且无序的随机数 do { int num = rand.nextInt(33) + 1;//获得一个1~33之间的随机数 reds.add(num);//添加元素到集合 if(reds.size()==6){ break; } } while (true); //随机数排序 //创建List集合,解决排序问题。使用List的原因是可以使用Collections。sort()方法来排序 List<Integer> list = new ArrayList<Integer>(); for (Integer in : reds) { list.add(in); //添加Set集合元素到List集合 } //调用Collections的sort()方法进行排序 Collections.sort(list); for (Integer in : list) { String temp = in+""; if(in>0&&in<10){ temp = "0"+in; } ssq += temp+" "; } //解决篮球问题 int blue = rand.nextInt(16)+1;//获得一个1~16之间的随机数 String blueStr = blue+""; if(blue>0&&blue<10){ blueStr = "0"+blue; } //ssq结果 ssq += " + " + blueStr; return ssq; }
}