zoukankan      html  css  js  c++  java
  • 条件选择结构学习 java 归纳(2)

    java的语法格式,关键字,保留字,常量变量什么的,几乎是每种语言都要学习的。这里直接略过了,开始条件选择结构。
    条件结构的语句要么用if,要么用switch。
    if一般有三种格式:


    switch是以下格式:


    switch格式的特点:

    其实以上说的很干瘪。什么都没说明白。。
    用个实例应该会好点,猜拳游戏。
    我想要和电脑比猜拳。我输入1,代表石头,2代表剪刀,3代表布。电脑随机输入1,2,3,。然后跟我输入的做比较。
    首先要解决的是,我怎么输入1,2,3.

    import java.util.Scanner;//引用Scanner这个库
    Scanner in=new Scanner(System.in);//将输入的功能赋给in
    int person=in.nextInt();//将输入功能定义为Int,并赋给person
    

    然后就是电脑怎么随机输入?有两种方法:
    第一种:

    import java.util.Random;//引用随机库
    Random random=new Random(3);//括号里面的10表示0~2的随机数
    

    第二种:

    int computer=(int)(Math.random()*3);//无需引用库,而且还支持多线程只是需要注意Math输出的随机数是double类型的,所以需要强制转换为int类型
    

    解决了上面两个问题,就要开始对比person和computer,如果person和computer是一样的,那么就是平局。如果不一样,那也要分我赢了还是我输了。这时候可以用到if判断。

                 if(person==computer){
                System.out.println("平局, ");
            }else if(person==1&&computer==3||person==2&&computer==1||person==3&&computer==2){
                System.out.println("您输了, ");
    
            }else {
                System.out.println("您赢了, ");
            }
    

    这样算是搞定了功能部分。另外我还想知道电脑到底是出的是什么?石头,剪刀还是布。我可以这样写:

                    String marks="拳头";
            switch(computer){
            case 1:
                marks="石头";
                break;
            case 2:
                marks="剪刀";
                break;
            case 3:
                marks="布";
                break;
            }
    

    所以我最后的代码是:

        import java.util.Scanner;
        public class guess{
        public static void main(String[] args){
            Scanner in=new Scanner(System.in);
            System.out.println("---猜拳游戏---");
            System.out.println("1.石头,2.剪刀,3,布");
            int person=in.nextInt();
            int computer=(int)(Math.random()*3)+1;
            String marks="拳头";
            switch(computer){
            case 1:
                marks="石头";
                break;
            case 2:
                marks="剪刀";
                break;
            case 3:
                marks="布";
                break;
            }
            if(person==computer){
                System.out.println("平局, 电脑出的是:"+marks+"-_-");
            }else if(person==1&&computer==3||person==2&&computer==1||person==3&&computer==2){
                System.out.println("您输了, 电脑出的是:"+marks+"-^-");
    
            }else {
                System.out.println("您赢了, 电脑出的是:"+marks+"-*-");
            }
        }
    }
    

    运行后,就可以很happy的跟电脑玩猜拳了。而且还不用担心电脑耍诈。

  • 相关阅读:
    #研发解决方案介绍#基于持久化配置中心的业务降级
    #研发解决方案介绍#Tracing(鹰眼)
    #研发解决方案介绍#Recsys-Evaluate(推荐评测)
    穷追不舍、事故入手和倒逼
    职场的真相——七句话
    被小伙伴们吓哭了:可怕的命令
    适用于研发基层员工的十个行为模式
    研发阿米巴组织的运行逻辑
    技术总监是干什么的?
    大学教给了我们什么(二)
  • 原文地址:https://www.cnblogs.com/BlueBlog/p/4468997.html
Copyright © 2011-2022 走看看