黑马程序员技术交流社区

标题: 学了数组,模仿写了个双色球模拟。 [打印本页]

作者: joe520kay    时间: 2015-7-16 11:17
标题: 学了数组,模仿写了个双色球模拟。
学了数组,模仿写了个双色球代码,有兴趣的童鞋可以模拟下,说不定下一期就中奖了!哈哈
同时,也希望有童鞋可以改善下代码。相互交流学习下。
代码如下:
package daxuegou;

import java.util.Random;

public class DoubleColorBall {
        public static void main(String[] args) {
                // 创建一个变量存储系统产生的蓝号
                int sysBlueBall;
                // 创建一个数组存储系统产生的红号
                int[] sysRedBall = new int[6];
                // 创建一个随机对象
                Random random = new Random();

                // 随机产生篮球
                sysBlueBall = random.nextInt(16) + 1;

                // 红球的范围
                int[] redBall = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
                                16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
                                32, 33 };
                //随机产生红球
                for (int i = 0; i < sysRedBall.length; i++) {
                        while (true) {
                                //创建红球的随机角标来取得红球的数值
                                int index = random.nextInt(33);
                                //为了避免重复取值,将取过的红球变为0
                                if (redBall[index] != 0) {
                                        sysRedBall = redBall[index];
                                        redBall[index] = 0;
                                        break;
                                }

                        }
                }
                //对系统产生的红球进行排序
                int temp;
                for(int i =0;i<sysRedBall.length;i++){
                        for(int j =0;j<sysRedBall.length-i-1;j++){
                                if(sysRedBall[j]>sysRedBall[j+1]){
                                        temp = sysRedBall[j];
                                        sysRedBall[j]=sysRedBall[j+1];
                                        sysRedBall[j+1]=temp;
                                }
                        }
                }
                System.out.println("本期的篮球号码为:"+sysBlueBall);
                System.out.print("本期的红球号码为:");
                for (int i : sysRedBall) {
                        System.out.print(i+",");
                }
        }

}



作者: masai158    时间: 2015-7-16 11:49
用集合更简单吧!!后面你会学到的。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2