摇号小程序
其实程序可以干很多事情
package my.doublecolorball;
/**
* 编码实现双色球功能 双色球规则红球33选6,蓝球16选1,不允许重复 使用Math类的random()方法在1到33内随机产生6个红球号码
* 每产生一个判断是否已经在数组中存在,不存在则保存于数组,否则重选 从1到16件随机产生一个蓝球号码、 最后输出双色球号
*
* @author 18409
*
*/
public class DoubleColorBall {
public static void main(String[] args) {
int[] numbers = new int[7];
int num = 0;
// 产生6个红球
for (int i = 0; i < 6; i++) {
do {
// 通过for循环,利用math.random来完成从1~33中选出6个红球
num = (int) (Math.random() * 33) + 1;
} while (isExist(num, numbers));
numbers[i] = num;// 如果不存在,就把该数字放在数组中
}
order(numbers);// 调用排序的方法
numbers[6] = (int) (Math.random() * 16) + 1;// 这里产生一个蓝球
// 构造输出的字符串
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < 6; i++) {
buffer.append(numbers[i]).append(",");// 用逗号分割隔开
}
// 删除最后一个逗号
buffer.delete(buffer.length() - 1, buffer.length());
buffer.append("+").append(numbers[6]);
System.out.println("双色球预测号:" + buffer.toString());
System.out.println("祝您生活愉快");
}
/** 判断当前产生的数在数组中是否已经存在 */
private static boolean isExist(int num, int[] numbers) {
for (int i = 0; i < 6; i++) {
if (num == numbers[i]) {
return true;// 已经存在此数
}
}
return false;// 不存在此数
}
/** 对数组进行排序 冒泡排序 */
private static void order(int[] numbers) {
for (int i = 0; i < 5; i++) {
for (int j = i + 1; j < 6; j++) {
if (numbers[i] > numbers[j]) {
int temp = numbers[i];
numbers[i] = numbers[j];
numbers[j] = temp;
}
}
}
}
}