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的跟电脑玩猜拳了。而且还不用担心电脑耍诈。

  • 相关阅读:
    Swagger接入
    Elasticsearch5.0.1索引压测结果
    Elasticsearch5.0 BreakChange摘要
    Elasticsearch1.7到2.3升级实践总结
    Java动态代理全面分析
    Spring之AntPathMatcher
    Lock的实现之ReentrantLock详解
    Elasticsearch之client源码简要分析
    elasticserach 索引删除 源码分析
    httpClient4.5.2工具类总结
  • 原文地址:https://www.cnblogs.com/BlueBlog/p/4468997.html
Copyright © 2011-2022 走看看