0
点赞
收藏
分享

微信扫一扫

Java中if嵌套小联系以及while,do...while笔记2022.4.13

舟海君 2022-04-14 阅读 62
java

上练习:一个用嵌套if做的数字比较系统

 public static void main(String[] args) {
        System.out.println("==欢迎来到数字比较系统,请您按照提示进行输入!==");
        Scanner scanner = new Scanner(System.in);//实例化一个 Scanner 对象 提供用户在控制台进行输入
        System.out.println("请你输入第一个数字:");    // 输出第一个请求
        int i1 = scanner.nextInt();
        // 用户输入的格式如果是数字就是nextInt汉字的话是next
        // 并且接受用户输入的数字然后用相对应的类型进行接收
        System.out.println("请你输入第二个数字:");   // 输出第二个请求
        int i2 = scanner.nextInt();               // 第二次进行接收
        if (i1!=i2){          
          // 1. 通过 嵌套 if 来判断用户输入的两次数字中是否相等  如果不相等则执行以下代码块
            System.out.println("a和b不相等;a的值为:"+i1+"\t b的值为:"+i2);
            System.out.println("请你输入第三个数字:");   // 输出第三次请求
            int i3 = scanner.nextInt();         // 进行接收
            System.out.println("请你输入第四个数字:");  // 输出第四次请求
            int i4 = scanner.nextInt();      // 进行接收
            if (i3<i4){     // 判断用户输入的第三次和第四次来进行比较
                // 如果第三次的数字小于第四次输入的数字,那么就会执行下面代码
                System.out.println("a<b所以a的值为:"+i3+"所以b的值为:"+i4+"所以就相当于:"+i3+"<"+i4);//输出结果
            }else if (i3>i4){
                System.out.println("a>b a的值为:"+i3+"所以b的值为:"+i4+"所以就相当于:"+i3+">"+i4);
            }
        }else if(i1==i2){  // 2. 如果相等执行以下代码块
            System.out.println("你输入的两个值相等,a的值为:\n "+i1+"\t b的值为:"+i2+"\n恭喜您输入获得数字奖品全新iphone13一台");
        }else{
            System.out.println("你输入的数字不合法,请您退出!");
        }
        scanner.close();
    }
输出:
	==============欢迎来到数字比较系统,请您按照提示进行输入!==============
	请你输入第一个数字:
	889
    请你输入第二个数字:
    989
    a和b不相等;a的值为:889	 b的值为:989
    请你输入第三个数字:
    888
    请你输入第四个数字:
    999
    a<b a的值为:888所以b的值为:999所以就相当于:888<999
  ==============欢迎来到数字比较系统,请您按照提示进行输入!==============
	请你输入第一个数字:
     999
     请你输入第二个数字:
     999
     你输入的两个值相等,a的值为:
     999	 b的值为:999
     恭喜您输入获得数字奖品全新iphone13一台

解析:就是很简单的一个数字比较,用户最多可以输入6次数字

  1. Switch 多选择结构
  • 多选择结构还有一个实现方式就是switch case 语句。

  • switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。

  • switch 语句中的变量类型可以是:从 Java SE7 开始,switch 支持字符串String类型了同时case标签必须为字符串常量或者字面量。语法以及解析:

    switch(expression){
    case value: // 固定格式 如:case 1 :
    // 语句
    break; // 可选 // 跳出当前执行
    case value:
    // 语句
    break; // 可选
    // 你可以由任意数量的case语句
    default : // 可选
    // 语句
    }
    案例:

      public static void main(String[] args) {
          // case 穿透!
          char A = 'A';    
        // 如: A = n 底下相对应的case就会输出,如果没有break则继续输出n以下的内容,否则就不输出!
          switch (A){
              case 'A':
                  System.out.println("日复一日的学习打卡!");
    

    // break;
    case ‘B’ :
    System.out.println(“冰冻三尺非一日之寒!”);
    break;
    case ‘C’ :
    System.out.println(“每天进步一点点!”);
    break;
    }
    }
    输出:
    日复一日的学习打卡!
    冰冻三尺非一日之寒!

解析:很明显可以看见代码中case ‘A’: 中的break被注销了,所以没有break的话程序就会继续往下执行,形成case穿透!break的作用就是让程序跳出,不在执行下面语句

扩展知识:~ 反编译: Java能运行都是靠着程序中自动生成的class文件,然后也有class也有底层的编译。

1.第一步:2.第二步:3.第三步:4.第四步:5.第五步:

第六步:

第七步:

  1. 循环结构

循环:简而言之就是让程序循环的执行,可以根据条件让程序执行多少次!分别有三种分别是:

  • while循环
  • do…while 循环
  • for 循环

在Java5中引入了一种主要用于数组的增强型for循环。

  1. while循环
  • while是最基本的循环,它的结构为:

    • while(布尔表达式){
        // 循环内容....
      }
      
  • 只要布尔表达式为true,循环会一直执行下去。我们大多数情况是让循环停止下来的,我们需要一个让表达式失效的方式来结束循环。少部分情况需要循环一直执行,比如服务器响应监听等…当循环条件一直为true会造成无限循环【死循环】,我们正常的业务编程中应尽量避免死循环,会影响程序行性能或者造成程序卡死崩溃情况!思考:计算1+1+2+3+4+5+6+…+100=? 练习如下:

    public static void main(String[] args) {
          // 使用 while 来计算 1+2+3+...+100=?
          int i = 0;
          int sum = 0;   // 和
          while(i<=100){   // 先判断条件,最后执行
              sum = sum + i;   // 和等于和加++后的内容 
              i++;  
          }
          System.out.println(sum);   // 输出和
      }
    

    输出:
    5050

  1. do…while循环
  • 对于while循环语句而言,如果不满足条件,则不能进入循环,但有时我们需要即使不满足条件,也至少执行一次。

  • do…while 循环和while循环相似,不同的是,do…while 循环至少会执行一次。语法:

    do {
    // 代码语句,先执行
    }while(布尔表达式); // 后判断

while和do…while的区别:1. while先判断后执行,do…while是先执行后判断!2. do…while总是保证循环体被至少执行一次,只是它们的主要差别。 如:

  public static void main(String[] args) {
        int i = 0;
        int sum = 0;
        do {
            sum = sum+i;    //  先执行一次
            i++;
        }while (i<=100);   // 最后才执行条件
        System.out.println(sum);
    }
输出:
	5050
	
     // while和do...while区别
    public static void main(String[] args) {
        int i = 0;
        while(i<0){   // while 循环是先判断布尔表达式在进行执行
            System.out.println(i);
        }
        System.out.println("*******************");

        do {
            System.out.println(i);   // do...while 是先执行一次在进行判断
        }while (i<0);
    }
输出:
	*******************
	0     // 这个0就是do...while所输出的
举报

相关推荐

0 条评论