zoukankan      html  css  js  c++  java
  • 【JAVA基础】03 Java语言基础

    前言:流程控制语句

    • 什么是流程控制语句

      • 流程控制语句:可以控制程序的执行流程。

    • 流程控制语句的分类

      • 顺序结构

      • 选择结构

      • 循环结构

    • 执行流程:

      • 从上往下,依次执行。

    • 案例演示

      • 输出几句话看效果即可

      • class Demo1_Sequence {                            //sequence 顺序
            public static void main(String[] args) {
                System.out.println("Hello World!11111");
                System.out.println("Hello World!3333");
                System.out.println("Hello World!22222");
                System.out.println("Hello World!44444");
            }
        }

     

     1. 选择结构

    1.1 选择结构if语句

    • 选择结构的分类

      • if语句

      • switch语句

    • if语句有几种格式

      • 格式1

        • if (比较表达式) { 语句体; }
        • /*
          * C:if语句的格式1
          * 
                  if(比较表达式) {
                      语句体;
                  }
          * D:执行流程:
              * 先计算比较表达式的值,看其返回值是true还是false。
              * 如果是true,就执行语句体;
              * 如果是false,就不执行语句体;
          */
          class Demo1_If {
              public static void main(String[] args) {
                  int age = 17;
          
                  if (age >= 18) {
                      System.out.println("可以浏览本网站");
                  }
          
                  System.out.println("完了");
              }
          }
          View Code
      • 格式2

        • if (比较表达式)  {
          语句体1;
          }else {
          语句体2;
          }

        • /*
          * A:if语句的格式2
          * 
                  if(比较表达式) {
                      语句体1;
                  }else {
                      语句体2;
                  }
          * B:执行流程:
              * 首先计算比较表达式的值,看其返回值是true还是false。
              * 如果是true,就执行语句体1;
              * 如果是false,就执行语句体2;
          * C:案例演示
              * a:获取两个数据中较大的值
              * b:判断一个数据是奇数还是偶数,并输出是奇数还是偶数
          
              * 注意事项:else后面是没有比较表达式的,只有if后面有。
          */
          class Demo3_If {
              public static void main(String[] args) {
                  /*int x = 0;
                  if (x == 1) {
                      System.out.println("男厕所欢迎您");
                  }else {
                      System.out.println("女厕所欢迎您");
                  }*/
                  
                  //a:获取两个数据中较大的值
                  /*int x = 10;
                  int y = 20;
                  int z;
          
                  if (x > y) {
                      z = x;
                  }else {
                      z = y;
                  }
          
                  System.out.println(z);*/
                  
                  //b:判断一个数据是奇数还是偶数,并输出是奇数还是偶数
                  int num = 11;
                  if (num % 2 == 0) {
                      System.out.println(num + "是一个偶数");
                  }else {
                      System.out.println(num + "是一个奇数");
                  }
              }
          }
          View Code
      • 格式3

        • if (比较表达式1)  {
          语句体1;
          }else if (比较表达式2)  {
          语句体2;
          }else if  (比较表达式3) {
          语句体3;
          }
          ...
          else {
          语句体n+1;
          }

        • /*
          * A:if语句的格式3:
          * 
                  if(比较表达式1) {
                      语句体1;
                  }else if(比较表达式2) {
                      语句体2;
                  }else if(比较表达式3) {
                      语句体3;
                  }
                  ...
                  else {
                      语句体n+1;
                  }
          * B:执行流程:
              * 首先计算比较表达式1看其返回值是true还是false,
              * 如果是true,就执行语句体1,if语句结束。
              * 如果是false,接着计算比较表达式2看其返回值是true还是false,
              
              * 如果是true,就执行语句体2,if语句结束。
              * 如果是false,接着计算比较表达式3看其返回值是true还是false,
              
              * 如果都是false,就执行语句体n+1。
          * C:注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示 
          */
          class Demo5_If {
              public static void main(String[] args) {
                  int x = 2;
                  if (x == 1) {
                      System.out.println("男厕所欢迎您");
                  }else if (x == 0) {
                      System.out.println("女厕所欢迎您");
                  }else {
                      System.out.println("无法识别您的性别");
                  }
              }
          }
          View Code
    • 选择结构if语句注意事项
      • 比较表达式无论简单还是复杂,结果必须是boolean类型
      • if语句控制的语句体如果是一条语句,大括号可以省略;
        • 如果是多条语句,就不能省略。建议永远不要省略。
      • 一般来说:有左大括号就没有分号,有分号就没有左大括号
      • /*
        *    a:比较表达式无论简单还是复杂,结果必须是boolean类型
            * b:if语句控制的语句体如果是一条语句,大括号可以省略;
              * 如果是多条语句,就不能省略。建议永远不要省略。
            * c:一般来说:有左大括号就没有分号,有分号就没有左大括号
        
        */
        class Demo2_If {
            public static void main(String[] args) {
                int age = 17;
        
                if (age >= 18 && age <= 60) {
                    System.out.println("可以浏览本网站");
                    //int x = 10;                是两句话,int x声明是一句,x = 10 赋值是一句
                }
                System.out.println("完了");
                
            }
        }
        View Code
    • if语句的格式2和三元的相互转换问题
      • if语句和三元运算符完成同一个效果
        • /*
          * A:案例演示
              * if语句和三元运算符完成同一个效果
          * B:案例演示
              * if语句和三元运算符的区别
              
              * 三元运算符实现的,都可以采用if语句实现。反之不成立。
              
              * 什么时候if语句实现不能用三元改进呢?
                  * 当if语句控制的操作是一个输出语句的时候就不能。
                  * 为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该有一个结果,而不是一个输出。
          
          */
          class Demo4_If {
              public static void main(String[] args) {
                  int x = 10;
                  int y = 20;
                  int z;
          
                  if (x > y) {
                      //z = x;
                      System.out.println(x + "是最大值");
                  }else {
                      //z = y;
                      System.out.println(y + "是最大值");
                  }
          
                  //System.out.println(z);
          
                  int a = 20;
                  int b = 30;
          
                  int c = (a > b)? a : b;
              }
          }
          View Code 
      • if语句和三元运算符的区别

        • 三元运算符实现的,都可以采用if语句实现。反之不成立。

      • 什么时候if语句实现不能用三元改进呢?

        • 当if语句控制的操作是一个输出语句的时候就不能。

        • 为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该有一个结果,而不是一个输出。

    • 选择结构if语句的嵌套使用
      • /*
        * A:案例演示
            * 需求:获取三个数据中的最大值
            * if语句的嵌套使用。
        */
        class Demo6_IfIf {
            public static void main(String[] args) {
                int a = 40;
                int b = 50;
                int c = 30;
                
                if (a > b) {
                    if (a > c) {
                        System.out.println(a + "是最大值");
                    }else {
                        System.out.println(c + "是最大值");
                    }
        
                }else {    //b >= a
                    if (b > c) {
                        System.out.println(b + "是最大值");
                    }else {
                        System.out.println(c + "是最大值");
                    }
                }
            }
        }
        View Code

    1.2  选择结构switch语句

    • switch语句的格式

      • switch (表达式)  {                        //基本数据类型可以接收byte,short,char,int
        case 值1:                               //引用数据类型可以接收枚举(JDK1.5),String字符串(JDK1.7)
                 语句体1;
            break;
        case 值2
                 语句体2;
            break;
             …
        default:
                 语句体n+1;
            break; }

    • switch语句的格式解释

    • 面试题

      • byte可以作为switch的表达式吗?

        • 可以。所有计算可以自动补位到int类型的,都可以
      • long可以作为switch的表达式吗?

        • 不可以
      • String可以作为switch的表达式吗?

        • 1.7版本JDK后可以
    • 执行流程

      • 先计算表达式的值

      • 然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句

      • class Demo1_Switch {
            public static void main(String[] args) {
                /*
                * A:switch语句的格式
                *        int x = 10;
                        switch(表达式) {        //基本数据类型可以接收byte,short,char,int
                              case 值1:        //引用数据类型可以接收枚举(JDK1.5)String字符串(JDK1.7)
                                语句体1;
                                break;
                                case 值2:
                                语句体2;
                                break;
                                …
                                default:    
                                语句体n+1;
                                break;
                        }
                 
                * B:switch语句的格式解释
                * C:面试题
                    * byte可以作为switch的表达式吗?
                    * long可以作为switch的表达式吗?
                    * String可以作为switch的表达式吗?
                * C:执行流程
                    * 先计算表达式的值
                    * 然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句
                */
        
                String name = "rose";
                String gender = "女";
                switch (gender) {
                case "男士":
                    System.out.println(name + "是一位" + gender + "喜欢吃饭睡觉打dota");
                break;
                case "女士":
                    System.out.println(name + "是一位" + gender + "喜欢逛街购物美容");
                break;
                default:
                    System.out.println(name + "是一位" + gender + "打雌性激素维持美貌容颜");
                break;
                }
            }
        }
        View Code
    • 选择结构switch语句的练习
      • 整数(给定一个值,输出对应星期几)

      • class Test1_Switch {
            public static void main(String[] args) {
                //* A:整数(给定一个值,输出对应星期几)
                int week = 1;
                switch (week) {
                case 1:
                    System.out.println("星期一");
                break;
                case 2:
                    System.out.println("星期二");
                break;
                case 3:
                    System.out.println("星期三");
                break;
                case 4:
                    System.out.println("星期四");
                break;
                case 5:
                    System.out.println("星期五");
                break;
                case 6:
                    System.out.println("星期六");
                break;
                case 7:
                    System.out.println("星期日");
                break;
                default:
                    System.out.println("对不起没有对应的星期");
                break;
                }
            }
        }
        View Code
    • 选择结构switch语句的注意事项
      • 案例演示

        • case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的

        • default可以省略吗?

          • 可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。

          • 特殊情况:

            • case就可以把值固定。

            • A,B,C,D

        • break可以省略吗?

          • 最后一个可以省略,其他最好不要省略

          • 会出现一个现象:case穿透。

          • 最终我们建议不要省略

        • default一定要在最后吗?

          • 不是,可以在任意位置。但是建议在最后。

        • switch语句的结束条件

          • 遇到break就结束了

          • 执行到switch的右大括号就结束了

    • 选择结构switch语句练习
      • 看程序写结果:

      • class Test2_Switch {
            public static void main(String[] args) {
                // A:看程序写结果:
        
                /*int x = 2;
                int y = 3;
                switch(x){
                    default:
                        y++;
                        break;
                    case 3:
                        y++;
                    case 4:
                        y++;
                }
                System.out.println("y="+y); // 输出4  */
            
            //B:看程序写结果:
                
                int x = 2;
                int y = 3;
                switch(x){
                    default:
                        y++;
                    case 3:
                        y++;
                    case 4:
                        y++; 
                }  
                System.out.println("y="+y); // 输出6
            }
        }
        View Code
        •  省略了break,会出现case穿透现象,导致逻辑出错

    • 选择结构if语句和switch语句的区别
      • 总结switch语句和if语句的各自使用场景

        • switch建议判断固定值的时候用

        • if建议判断区间或范围的时候用

      • 案例演示

        • 分别用switch语句和if语句实现下列需求:

          • 键盘录入月份,输出对应的季节

          • import java.util.Scanner;
            class Test3_SwitchIf {
                public static void main(String[] args) {
                    /*
            
                    * 键盘录入月份,输出对应的季节
                    一年有四季
                    3,4,5春季
                    6,7,8夏季
                    9,10,11秋季
                    12,1,2冬季
                    */
                    Scanner sc = new Scanner(System.in);    //创建键盘录入对象
                    System.out.println("请输入月份");
                    int month = sc.nextInt();                //将键盘录入的结果存储在month
                    /*switch (month) {
                    case 3:
                    case 4:
                    case 5:
                        System.out.println(month + "月是春季");
                    break;
                    case 6:
                    case 7:
                    case 8:
                        System.out.println(month + "月是夏季");
                    break;
                    case 9:
                    case 10:
                    case 11:
                        System.out.println(month + "月是秋季");
                    break;
                    case 12:
                    case 1:
                    case 2:
                        System.out.println(month + "月是冬季");
                    break;
                    default:
                        System.out.println("对不起没有对应的季节");
                    break;
                    }*/
            
                    //用if语句来完成月份对应季节
                    if (month > 12 || month < 1) {
                        System.out.println("对不起没有对应的季节");
                    }else if (month >= 3 && month <= 5) {
                        System.out.println(month + "月是春季");
                    }else if (month >= 6 && month <= 8) {
                        System.out.println(month + "月是夏季");
                    }else if (month >= 9 && month <= 11) {
                        System.out.println(month + "月是秋季");
                    }else {
                        System.out.println(month + "月是冬季");
                    }
                }
            }
            View Code

     

     

    2. 循环结构

    2.1 循环结构概述

    • 循环结构的分类

      • for

      • while

      • do...while

    2.2 循环结构——for语句

    • 格式:
      • for (初始化表达式;条件表达式;循环后的操作表达式) {
          循环体;
        }

    • 执行流程:

      • 执行初始化语句

      • 执行判断条件语句,看其返回值是true还是false

        • 如果是true,就继续执行

        • 如果是false,就结束循环

      • 执行循环体语句;

      • 执行循环后的操作表达式  (在循环体执行完成后,执行 i++,或 i--)

      • 回到执行判断条件语句,看其返回值是true还是false

    • 案例演示

      • 在控制台输出10次"helloworld"

      • /*
        * A:循环结构的分类
            * for,while,do...while 
        * B:循环结构for语句的格式:
        * 
                for(初始化表达式;条件表达式;循环后的操作表达式) {
                    循环体;
                }
        * C执行流程:
            * a:执行初始化语句
            * b:执行判断条件语句,看其返回值是true还是false
                * 如果是true,就继续执行
                * 如果是false,就结束循环
            * c:执行循环体语句;
            * d:执行循环后的操作表达式
            * e:回到B继续。
        * D:案例演示
            * 在控制台输出10次"helloworld"
        */
        class Demo1_For {
            public static void main(String[] args) {
                //在控制输出10次helloworld,这样做不推荐,因为复用性太差
                /*System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");
                System.out.println("helloworld");*/
        
                for (int i = 1;i <= 10 ;i++ ) {
                    System.out.println(i + " helloworld");
                }
            }
        }
        View Code
    • 案例演示

      • 需求:请在控制台输出数据1-10

      • 需求:请在控制台输出数据10-1

      • /*
        * A:案例演示
            * 需求:请在控制台输出数据1-10
            * 需求:请在控制台输出数据10-1
        * B:注意事项
            * a:判断条件语句无论简单还是复杂结果是boolean类型。
            * b:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。
            * c:一般来说:有左大括号就没有分号,有分号就没有左大括号
        */
        class Test1_For {
            public static void main(String[] args) {
                for (int i = 1;i <= 10 ;i++ ){
                    System.out.println("i = " + i);
                }
                System.out.println("-----------------------");
        
                for (int i = 10;i >= 1 ;i-- ) {
                    System.out.println("i = " + i);
                }
            }
        }
        View Code
    • 注意事项

      • 判断条件语句无论简单还是复杂结果是boolean类型。

      • 循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。

      • 一般来说:有左大括号就没有分号,有分号就没有左大括号

    • 案例演示

      • 需求:求出1-10之间数据之和

      • 需求:求出1-100之间偶数和

      • 需求:求出1-100之间奇数和

      • /*
        * A:案例演示
            * 需求:求出1-10之间数据之和
        * B:学生练习
            * 需求:求出1-100之间偶数和
            * 需求:求出1-100之间奇数和
        
            分析:1-10数据的和
            0 + 1
                1 + 2
                    3 + 3
                        6
                        ...
        */
        class Test2_For {
            public static void main(String[] args) {
                //1-10的和
                /*int sum = 0;
                for (int i = 1;i <= 10 ;i++ ) {
                    sum = sum + i;
                }
        
                System.out.println("sum = " + sum);*/
        
                //1-100的偶数和
                /*int sum = 0;
                for (int i = 1;i <= 100 ;i++ ) {
                    if (i % 2 == 0) {
                        sum = sum + i;
                    }
                }
        
                System.out.println("sum = " + sum);*/
        
                //1-100的奇数和
                int sum = 0;
                for (int i = 1;i <= 100 ;i+=2 ) {
                    /*if (i % 2 != 0) {
                        sum = sum + i;
                    }*/
                    sum = sum + i;
                }
        
                System.out.println("sum = " + sum);
            }
        }
        View Code

     

    • “水仙花数”案例演示

      • 需求:在控制台输出所有的”水仙花数”

      • 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。

      • 举例:153就是一个水仙花数。

        • 153 = 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153

      • /*
        * A:案例演示
            * 需求:在控制台输出所有的”水仙花数”
        
            * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
            * 举例:153就是一个水仙花数。
            * 153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
        
            分析:
            1,100 - 999
            2,获取每一个位数的值,百位,十位,个位
            3,判断各个位上的立方和是否等于这个数,如果等于打印
        */
        class Test3_Flower {
            public static void main(String[] args) {
                for (int i = 100;i <= 999 ;i++ ) {                    //获取100到999之间的数
                    int ge = i % 10;                                //123 % 10 
                    int shi = i / 10 % 10;                            //12 % 10;
                    int bai = i / 10 / 10 % 10;                        //1 % 10
        
                    if (ge * ge * ge + shi * shi * shi + bai * bai * bai == i) {
                        System.out.println(i);
                    }
                }
            }
        }
        View Code

     

     

     

    2.3 循环结构——while语句

    •  循环结构while语句的格式:
      • while循环的基本格式:
        while (判断条件语句)  {
             循环体语句;
        }

      • 完整格式:
        • 初始化语句;
          while  (判断条件语句)  {
              循环体语句;
              控制条件语句;
          }

    • 执行流程:
      • 执行初始化语句
      • 执行判断条件语句,看其返回值是true还是false

        • 如果是true,就继续执行

        • 如果是false,就结束循环

      • 执行循环体语句;

      • 执行控制条件语句

      • 回到执行判断语句,继续循环,直到条件语句不满足。

    • 案例演示
      • 需求:请在控制台输出数据1-10
      • /*
        * A:循环结构while语句的格式:
        *         
                while循环的基本格式:
                while(判断条件语句) {
                    循环体语句;
                }
                
                完整格式:
                
                初始化语句;
                while(判断条件语句) {
                     循环体语句;
                     控制条件语句;
                }
        * B:执行流程:
            * a:执行初始化语句
            * b:执行判断条件语句,看其返回值是true还是false
                * 如果是true,就继续执行
                * 如果是false,就结束循环
            * c:执行循环体语句;
            * d:执行控制条件语句
            * e:回到B继续。
        * C:案例演示
            * 需求:请在控制台输出数据1-10
        */
        class Demo1_While {
            public static void main(String[] args) {
                int x = 1;
                while (x <= 10) {
                    System.out.println("x = " +  x);
                    x++;
                }
            }
        }
        View Code 
    • 案例演示
      • 求和:求1-100的和
      • 统计:统计水仙花数 有多少个
      • class Test1_While {
            public static void main(String[] args) {
                /*
                * A:求和思想
                    * 求1-100之和
                * B:统计思想
                    * 统计”水仙花数”共有多少个
                */
                
                //求1-100之和
                /*int sum = 0;
                int i = 1;
                while (i <= 100) {
                    sum += i;                    //sum = sum + i;
                    i++;                        //让变量i自增
                }
        
                System.out.println("sum = " + sum);*/
        
                //统计”水仙花数”共有多少个
                int count = 0;                    //计数器
                int i = 100;
                while (i <= 999) {
                    int ge = i % 10;
                    int shi = i / 10 % 10;
                    int bai = i / 100;
        
                    if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {
                        count ++;
                    }
        
                    i++;
                }
        
                System.out.println("count =" + count);
        
                //某屌丝为了追求女神,写了一段代码示爱,但是女神也会java,改动一下把屌丝拒绝
                int j = 1;
                while (j <= 10000) {
                    System.out.println("I Love You!!!");
                    j++;
                }
            }
        }
        View Code

     

    2.4 循环结构——do...while语句

    • 循环结构do...while语句的格式:
      • 初始化语句;
        do {
        循环体语句;
        控制条件语句;
        }while(判断条件语句);

    • 执行流程:

      • 执行初始化语句

      • 执行循环体语句;

      • 执行控制条件语句

      • 执行判断条件语句,看其返回值是true还是false

        • 如果是true,就继续执行

        • 如果是false,就结束循环

      • 回到循环体语句,再次循环,直至控制条件不满足

    • 案例演示
      • 需求:请在控制台输出数据1-10
      • class Test {
            public static void main(String[] args) {
                int i = 0;
                do {
                    System.out.println(i);
                    i++;
                }
                while (i < 11);
            }
        }
        View Code

     

    2.5 三种循环语句的区别

    • 三种循环语句的区别:

      • do...while循环至少执行一次循环体。

      • 而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句

        • 例如:
          • class Demo1_DoWhile {
                public static void main(String[] args) {
                    //while 和do while的区别
                    int i = 11;
                    do {
                        System.out.println("i = " + i);
                        i++;
                    }
                    while (i <= 10);  // 条件不成立,但是循环体先执行,故至少执行一次循环体
                    
                    System.out.println("---------------------");
            
                    int j = 11;
                    while (j <= 10) {
                        System.out.println("j = " + j);
                        j++;
                    }  //条件不成立,不执行
            
                }
            }
      • 如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用谁就用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。
        • 例如:
          • class Demo1_DoWhile {
                public static void main(String[] args) {
                    for (int i = 1;i <= 10 ;i++ ) {
                        System.out.println("i = " + i);
                    }
            
                    //System.out.println("i = " + i);            for语句执行后变量会被释放,不能再使用
                    System.out.println("-------------------");
                    int i = 1;
                    while (i <= 10) {
                        System.out.println("i = " + i);
                        i++;
                    }
                    System.out.println("-------------------");
                    System.out.println("i = " + i);                //while语句执行后,初始化变量还可以继续使用*/
            
                    }
            }

    2.6 死循环

    • 一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。

    • 两种最简单的死循环格式

      • while(true){...}

      • for(;;){...}

      • class Demo1_DoWhile {
            public static void main(String[] args) {
        
                //while语句的无限循环
                while (true) {
                    System.out.println("hello world");
                }
        
                //System.out.println("hello world");
                //for语句的无限循环
                for (; ; ) {
                    System.out.println("hello world");
                }
            }
        }
        View Code

    2.7 循环嵌套

    • 打印4行5列的星星
      • /*
        * A:案例演示
            * 需求:请输出一个4行5列的星星(*)图案。
            * 
                    如图:
                        *****
                        *****
                        *****
                        *****
                        
                    注意:
                        System.out.println("*");和System.out.print("*");的区别
        * B:结论:
            * 外循环控制行数,内循环控制列数
        */
        class Demo1_ForFor {
            public static void main(String[] args) {
                /*for (int i = 1;i <= 3 ;i++ ) {                    //外循环
                    System.out.println("i = " + i);
                    for (int j = 1;j <= 3 ;j++ ) {                //内循环
                        System.out.println("j = " + j);
                    }
                }*/
        
                for (int i = 1;i <= 4 ;i++ ) {                    //外循环决定的是行数
                    for (int j = 1;j <= 5 ;j++ ) {                //内循环决定的是列数
                        System.out.print("*");
                    }
                    System.out.println();
                }
            }
        }
        
        /*
        *****
        *****
        *****
        *****
        
        */
        View Code
      • 结论:
        • 外循环控制行数,内循环控制列数
    • 请输出下列的形状
      • /*
        需求:请输出下列的形状
                *
                **
                ***
                ****
                *****
        */
        class Demo2_ForFor {
            public static void main(String[] args) {
                for (int i = 1;i <= 5 ; i++) {                //外循环决定行数
                    for (int j = 1;j <= i ;j++ ) {            //内循环决定列数
                        System.out.print("*");
                    }
                    System.out.println();                    //将光标换到下一行的行首
                }
            }
        }
        View Code
    • 九九乘法表
      • class Test {
            public static void main(String[] args) {
                for (int i = 1;i < 10; i++ ) {
                    for (int j = 1; j <= i ; j++ ) {
                        System.out.print(j+"*"+i+"="+(i * j)+" ");
                    }
                    System.out.println();
                        
                }
        
            }
        }
        View Code

    2.8 控制跳转语句——break语句,continue语句,标号,return语句

    • break语句
      • 只能在switch和循环中
    • continue语句
      • 只能在循环中
    • 控制跳转语句标号
      • 标号:标记某个循环对其控制
      • 标号组成规则:其实就是合法的标识符
      • class Demo3_Mark {                                        //mark 标记
            public static void main(String[] args) {
                outer: for (int i = 1;i <= 10 ;i++ ) {        //outer,inner就是标号,只要是合法的标识符即可
                    System.out.println("i = " + i);
                    inner: for (int j = 1;j <= 10 ;j++ ) {
                        System.out.println("j = " + j);
                        break outer;
                    }
                }
            }
        }
      • 标号的格式就是 合法的标识符 加上“:”
        • outer:
        • inner:
        • a:
        • http:
        • this:
    • 控制跳转语句return语句)
      • return的作用

        • 返回

          • 其实它的作用不是结束循环的,而是结束方法的。

      • 案例演示

        • return和break以及continue的区别?

          • return是结束方法

          • break是跳出循环

          • continue是终止本次循环继续下次循环

     

  • 相关阅读:
    C# 获取文件的修改时间、访问时间、创建时间
    Nhibernate Or多条件查询
    C# 将GridView当前页数据导成Execl
    C# 清空文件夹
    TreeView默认收缩
    JS控制控件的隐藏显示
    div置顶,不随滚动条滚动而滚动
    js 父窗体与子窗体的调用
    树形菜单的绑定以及链接
    2010.10.16 OA项目组一周报告 CQ
  • 原文地址:https://www.cnblogs.com/zoe233/p/12735842.html
Copyright © 2011-2022 走看看