黑马程序员技术交流社区

标题: 分享一道题~ [打印本页]

作者: Fate_stay    时间: 2016-9-16 22:55
标题: 分享一道题~
package cn.itcast.day21_Prictice;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.Random;
import java.util.Scanner;

/**
* 彩票小程序,要求如下:
        3.        随机生成6个0-15(包含0和15)的数字,作为彩票的中奖号码,要求最终的中奖号码没有重复数字
        4.        键盘录入6个0-15(包含0和15)的数字,比较录入的数字和中奖号码相同的个数
                小于3个,没有中奖
                当3个一样,中三等奖
                当4个一样,中二等奖
                当5个一样,中一等奖
                当全部一样,中特等奖
                在控制台打印中奖结果,样式如下:
                        "您的号码为XX,XX,XX,XX,XX,XX,中了X等奖,恭喜您!"或者
                        "您的号码为XX,XX,XX,XX,XX,XX,没有中奖!"
* */
public class Prictice8 {
        public static void main(String[] args) {
                Random r = new Random();
                // 创建一个set集合,用来装随机数
                HashSet<Integer> set = new HashSet<>();
                // 当不满足条件时,跳出循环
                while(set.size() != 6) {
                        int ball = r.nextInt(16);
                        set.add(ball);
                }
                printBinGo(set);
                System.out.println("中奖号码为:"+ set);
        }
       
        public static void printBinGo(HashSet<Integer> set) {
               
                Scanner sc = new Scanner(System.in);
                ArrayList<Integer> list = new ArrayList<>();
                System.out.println("请输入6个0-15的数字");
                for(int i = 0; i <= 5; i++) {
                        int userNum = sc.nextInt();
                        list.add(userNum);
                }
                // 定义临时变量,用来记录相同的个数
                int temp = 0;
                // 两个for循环遍历
                for (Integer integer : set) {
                        for(int j = 0; j <= 5; j++) {
                                if(list.get(j) == integer) {
                                        temp++;
                                }
                        }
                }
                switch(temp) {
                // 注: switch , case 不要忘记break
                        case 3:
                                System.out.println("您的号码为"+list+"中了三等奖,恭喜您!");
                                break;
                        case 4:
                                System.out.println("您的号码为"+list+"中了四等奖,恭喜您!");
                                break;
                        case 5:
                                System.out.println("您的号码为"+list+"中了五等奖,恭喜您!");
                                break;
                        case 6:
                                System.out.println("您的号码为"+list+"中了特等奖,恭喜您!");
                                break;
                        default:
                                System.out.println("您的号码为"+list+"没有中奖!");
                                break;
                }
        }
}




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