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() ;

                       }

             }

    }

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

  • 相关阅读:
    Java线程:线程的调度-优先级
    Java线程:线程的调度-休眠
    Java线程:线程的交互
    Java线程:线程的同步与锁
    使用GIT时排除NuGet的packages文件夹
    解决Visual Studio 2013 XAML设计器异常
    代码协定(四)——安装和使用
    在WPF 4.5中跨线程更新集合
    微软自家的.Net下的JavaScript引擎——ClearScript
    在MEF中手动导入依赖的模块
  • 原文地址:https://www.cnblogs.com/guwenren/p/2990127.html
Copyright © 2011-2022 走看看