java 实现双色球随机选一注
直接上代码
private static String[] balls={"01","02","03","04","05","06","07","08","09","10","11","12","13","14",
"15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33"};
public static String[] getShuan() {
String[] doubleColorBall=new String[7];
boolean[] flag=new boolean[balls.length];
//System.out.println(Arrays.toString(flag));
Random random=new Random();
for (int i = 0;i < doubleColorBall.length-1;i++) {
while (true) {
int index=random.nextInt(balls.length);
if(!flag[index]){
doubleColorBall[i]=balls[index];
flag[index]=true;
break;
}
}
}
//先给最后一个元素赋个最大值,避免在排序的时候出现空指针
doubleColorBall[doubleColorBall.length-1]=balls[balls.length-1];
Arrays.sort(doubleColorBall);
doubleColorBall[doubleColorBall.length-1]=balls[random.nextInt(16)];
return doubleColorBall;
}
个人觉得性能还可以,大家自己试试吧