黑马程序员技术交流社区

标题: 石头剪刀布技术交流 [打印本页]

作者: charges    时间: 2018-12-15 15:27
标题: 石头剪刀布技术交流
public class Bapima {
    public static void main(String[] args) {
        //游戏开始语句
        System.out.println("石头剪刀布游戏开始,请出拳:");
        //定义list集合,按0到2的索引顺序存贮石头、剪刀、布等字符串,供后面与键盘录入的进行比较
        ArrayList <String> list = new ArrayList <>();
        list.add("石头");
        list.add("剪刀");
        list.add("布");
        //定义键盘录入Scanner
        Scanner sc = new Scanner(System.in);
        //定义电脑随机数
        Random r = new Random();
        //死循环,除非你赢了才会通过break停止循环
        while (true) {
            String b = sc.next();
            //定义String类变量b接收键盘录入字符串;定义n接收Random随机数,范围是[0,3)
            //0代表石头,1代表剪刀,2代表布
            int n = r.nextInt(3);
            if (b.equals(list.get(0))) {
                //键盘输入石头与list集合索引为0的“石头”进行内容比较,一致就输出下列语句
                System.out.println("你出的是石头");
                //如果电脑随机数是0(代表石头),则平局,while循环重新开始
                if (n == 0) {
                    System.out.println("电脑出的是:石头");
                    System.out.println("平局!加油哦!请再亮出你的小拳拳");
                    //如果电脑随机数是1(代表剪刀),你赢,break中断while循环
                } else if (n == 1) {
                    System.out.println("电脑出的是:剪刀");
                    System.out.println("你赢了");
                    break;
                    //如果电脑随机数是2(代表剪刀),你输,while循环重新开始
                } else {
                    System.out.println("电脑出的是:布");
                    System.out.println("你输了!加油哦!请再亮出你的小拳拳");

                }
                  //键盘输入剪刀与list集合索引为1的“剪刀”进行内容比较
            } else if (b.equals(list.get(1))) {
                System.out.println("你出的是剪刀");

                if (n == 0) {
                    System.out.println("电脑出的是:石头");
                    System.out.println("你输了!加油哦!请再亮出你的小拳拳");

                } else if (n == 1) {
                    System.out.println("电脑出的是:剪刀");
                    System.out.println("平局!加油哦!请再亮出你的小拳拳");

                } else {
                    System.out.println("电脑出的是:布");
                    System.out.println("你赢了");
                    break;
                }
                                //键盘输入布与list集合索引为2的“布”进行内容比较
            } else if (b.equals(list.get(2))) {
                System.out.println("你出的是布");

                if (n == 0) {
                    System.out.println("电脑出的是:石头");
                    System.out.println("你赢了");
                    break;
                } else if (n == 1) {
                    System.out.println("电脑出的是:剪刀");
                    System.out.println("你输了!加油哦!请再亮出你的小拳拳");

                } else {
                    System.out.println("电脑出的是:布");
                    System.out.println("平局!加油哦!请再亮出你的小拳拳");
                }
            } else {
                System.out.println("逗逼,请认真出拳!");
                                //键盘录入字符串;如果不是石头、剪刀、布中任意的会提醒
            }
        }
    }
}
通过运用集合及集合方法,Scanner、Random、while循环、if判断、break把剪刀石头布小游戏实现







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