zoukankan      html  css  js  c++  java
  • 黑马程序员JavaSE核心知识09程序结构

    3.9、程序结构(重点)

             程序结构在语言之中一共分为三种:顺序结构、选择结构、循环结构。

    3.9.1 、顺序结构

             所有的代码按照先后的顺序依次进行执行,例如,如下代码:

    public class Hello {

             public static void main(String args[]) {

                       int x = 2 ;

                       x = x + 2 ;

                       System.out.println(x) ;

             }

    }

    3.9.2 、分支结构(选择结构)

             就相当于提供了一些条件判断,根据判断的结果来选择执行何种操作,对于分支结构主要操作语法:if、if..else、if..else if…else,这三种结构的完整语法如下:

    if语法:

    if…else语法:

    if…else if…else语法:

    if (布尔表达式) {

             条件满足时执行的程序 ;

    }

    if (布尔表达式) {

             条件满足时执行的程序 ;

    } else {

             条件不满足时执行的程序 ;

    }

    if (布尔表达式1) {

             条件满足时执行的程序 ;

    } else if (布尔表达式2) {

             条件满足时执行的程序 ;

    } ... else {

             所有条件都不满足时执行的程序 ;

    }

    范例:if语句

    public class Hello {

             public static void main(String args[]) {

                       int age = 16 ;

                       if (age < 18) {

                                System.out.println("少儿不宜观看。") ;

                       }

             }

    }

    范例:if..else语句

    public class Hello {

             public static void main(String args[]) {

                       int age = 26 ;

                       if (age < 18) {

                                System.out.println("少儿不宜观看。") ;

                       } else {

                                System.out.println("青年观看的教育片。") ;

                       }

             }

    }

    范例:if…else if…else操作

    public class Hello {

             public static void main(String args[]) {

                       int age = 260 ;

                       if (age <= 18) {

                                System.out.println("您属于青少年。") ;

                       } else if (age > 18 && age <= 50) {

                                System.out.println("您属于青状年。") ;

                       } else if (age > 50 && age <250) {

                                System.out.println("您属于老年。") ;

                       } else {

                                System.out.println("妖怪,您不是人。") ;

                       }

             }

    }

             但是对于多条件判断使用if..else if…else是可以判断布尔条件的,如果是多数值判断,可以通过switch完成,语法:

    switch (判断值) {

             case 数值1:

                       满足此数值时执行的语句 ;

                       [break ;]

             case 数值2:

                       满足此数值时执行的语句 ;

                       [break ;]

             case 数值3:

                       满足此数值时执行的语句 ;

                       [break ;]

                       ...

             default:

                       所有条件都不满足时执行的语句 ;

                       [break ;]

    }

             对于switch操作,在最早主要使用的是整型或者是字符来完成。

    public class Hello {

             public static void main(String args[]) {

                       int ch = 0 ;

                       switch(ch) {

                                case 0 :

                                         System.out.println("数值是0。") ;

                                         break ;

                                case 1 :

                                         System.out.println("数值是1。") ;

                                         break ;

                                case 2 :

                                         System.out.println("数值是2。") ;

                                         break ;

                                default :

                                         System.out.println("没有条件满足。") ;

                                         break ;

                       }

             }

    }

             但是对于switch随着版本的不同,也有所更改,JDK 1.5之后也可以利用枚举作为判断条件,而JDK 1.7之后,switch里面也可以判断字符串了(String),这个可以理解为JDK 1.7才支持的新功能。

    public class Hello {

             public static void main(String args[]) {

                       String str = "two" ;

                       switch(str) {

                                case "one" :

                                         System.out.println("壹") ;

                                         break ;

                                case "two" :

                                         System.out.println("贰") ;

                                         break ;

                                case "three" :

                                         System.out.println("叁") ;

                                         break ;

                                default :

                                         System.out.println("没有") ;

                                         break ;

                       }

             }

    }

    3.9.3 、循环结构

             循环的概念主要指的是某一块代码可以被重复执行多次。而循环的操作,分为两种语法:while循环、for循环。

    1   while循环:

    do…while98%不会看见使用):

    while(布尔表达式)

    do {

             循环体 ;

             循环条件修改 ;

    } while (循环判断) ;

    while (循环判断) {

             循环体 ;

             循环条件修改 ;

    }

             通过这样的语法就可以发现,实际上do..while表示先执行后判断,而while循环表示先判断后执行,如果循环条件都不满足的情况下,do..while至少执行一次,而while一次都不会执行。

             通过以上给出的两个格式,应该可以发现出循环结构的特点:

                       · 循环的结束判断;

                       · 每次循环体执行的时候,循环条件要求修改。

    范例:使用while两种循环实现1 ~ 100的累加

    do…while

    while(布尔表达式)

    public class Hello {

             public static void main(String args[]) {

                       int sum = 0 ;        // 保存累加的结果

                       int x = 1 ;   // 进行结束的判断

                       do {

                                sum += x ; // 累加

                                x ++ ;         // x自增长

                       } while (x <= 100) ;     // 满足则继续执行

                       System.out.println(sum) ;

             }

    }

    public class Hello {

             public static void main(String args[]) {

                       int sum = 0 ;        // 保存累加的结果

                       int x = 1 ;   // 进行结束的判断

                       while (x <= 100) {

                                sum += x ; // 累加

                                x ++ ;         // x自增长

                       }

                       System.out.println(sum) ;

             }

    }

    2   for循环:

             for循环的最大特点是已经明确的知道了循环次数,for循环的语法如下:

    for (循环的初始值 ; 循环的判断条件 ; 循环条件的修改) {

             循环体 ;

    }

    范例:实现1 ~ 100的累加

    推荐作法:

    不推荐作法:

    public class Hello {

             public static void main(String args[]) {

                       int sum = 0 ;        // 保存累加的结果

                       for (int x = 1 ; x <= 100 ; x ++) {

                                sum += x ;

                       }

                       System.out.println(sum) ;

             }

    }

    public class Hello {

             public static void main(String args[]) {

                       int sum = 0 ;        // 保存累加的结果

                       int x = 1 ;  // 初始值

                       for ( ; x <= 100 ; ) {

                                sum += x ;

                                x ++ ;         // 循环条件修改

                       }

                       System.out.println(sum) ;

             }

    }

             个人总结,关于循环的出现情况:

                       · while循环:在不确定循环次数,但是确定循环结束条件的情况下使用;

                       · for循环:确定循环次数的情况下使用。

             对于循环而言,也可以进行循环的嵌套操作。

    范例:输出一个乘法口诀表,需要两层循环

    public class Hello {

             public static void main(String args[]) {

                       for (int x = 1 ; x <= 9 ; x ++) {       // 控制循环行

                                for (int y = 1; y <= x ; y ++ ) {

                                         System.out.print(x + "*" + y + "=" + x * y + "\t") ;

                                }

                                System.out.println() ;    // 换行

                       }

             }

    }

    范例:打印三角型

          

    public class Hello {

             public static void main(String args[]) {

                       int line = 9 ;         // 打印9行

                       for (int x = 0 ; x < 9 ; x ++) {         // 循环次数,控制行

                                for (int y = 0 ; y < line - x ; y ++) {

                                         System.out.print(" ") ;

                                }

                                for (int y = 0 ; y <= x ; y ++) {

                                         System.out.print("* ") ;

                                }

                                System.out.println() ;

                       }

             }

    }

             循环操作的基本功能就是重复执行一段代码,但是以上的循环操作,只是作为学习过程之中的程序,循环基本的逻辑结构,实际之中意义不大。

  • 相关阅读:
    .NetCore Grpc 客服端 工厂模式配置授权
    DOCKER 拉取 dotnet 镜像太慢 docker pull mcr.microsoft.com too slow
    Introducing .NET 5
    VSCode 出现错误 System.IO.IOException: The configured user limit (128) on the number of inotify instances has been reached.
    Omnisharp VsCode Attaching to remote processes
    zookeeper3.5.5 centos7 完全分布式 搭建随记
    Hadoop2.7.7 centos7 完全分布式 配置与问题随记
    MySQL索引 索引分类 最左前缀原则 覆盖索引 索引下推 联合索引顺序
    SQL基础随记3 范式 键
    MySQL调优 优化需要考虑哪些方面
  • 原文地址:https://www.cnblogs.com/guwenren/p/2990127.html
Copyright © 2011-2022 走看看