杰神之Java中的程序执行流程

原创 2017年12月29日 19:53:04

Java中的程序执行流程

顺序结构

顺序结构是值Java的程序执行是按顺序从上往下逐行执行。

循环结构

顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,就需要使用循环结构。
Java中有三种主要的循环结构:
* while 循环
* do…while 循环
* for 循环

while循环

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

    while(判断条件①){
        循环体②
    }

执行顺序:走①,①成立走②,②完成之后走①,①成立走②……直到①不成立,循环结束
如果判断条件成立,就执行循环体,不成立,循环结束。

实例

public class Test {
   public static void main(String args[]) {
      int x = 1;
      while( x < 10 ) {
         System.out.println( "x : "+x );
         x++;
      }
   }
}

以上实例编译运行结果如下:

     x : 1
     x : 2
     x : 3
     x : 4
     x : 5
     x : 6
     x : 7
     x : 8
     x : 9

do…while 循环

对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。
do…whlie 的结构为:

    do{
            循环体
    }while(循环的判断条件);

do…while 的执行规则:先执行循环体中的内容(不管循环条件成不成立,都会先执行循环体的内容),再去看循环条件,满足就再执行循环体,当循环条件 不成立时 循环结束。

实例

public class Test {
   public static void main(String args[]){
      int x = 1;

      do{
         System.out.print("value of x : " + x );
         x++;
         System.out.print("\n");
      }while( x < 10 );
   }
}

以上实例编译运行结果如下:

     x : 1
     x : 2
     x : 3
     x : 4
     x : 5
     x : 6
     x : 7
     x : 8
     x : 9

for循环

虽然所有循环结构都可以用 while 或者 do…while表示,但 Java 提供了另一种语句 —— for 循环,使一些循环结构变得更加简单。
for循环执行的次数是在执行前就确定的。语法格式如下:

    for(初始化;判断条件;更新){
            循环体
    }

关于 for 循环有以下几点说明:
* 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
* 然后,检测判断条件(布尔表达式)的值。如果为 true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
* 执行一次循环后,更新循环控制变量。
* 再次检测布尔表达式。循环执行上面的过程。

实例

public class Test {
   public static void main(String args[]) {

      for(int x = 1; x < 10; x = x+1) {
         System.out.print("value of x : " + x );
         System.out.print("\n");
      }
   }
}

以上实例编译运行结果如下:

     x : 1
     x : 2
     x : 3
     x : 4
     x : 5
     x : 6
     x : 7
     x : 8
     x : 9

break 关键字

break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。
break 跳出最里层的循环,并且继续执行该循环下面的语句。

continue 关键字

continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
在 for 循环中,continue 语句使程序立即跳转到更新语句。
在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。

分支结构

顺序结构只能顺序执行,不能进行判断和选择,因此需要分支结构。
Java 有两种分支结构:
* if 语句
* switch 语句

if语句

if语句的书写格式:
* 格式一:

    if(判断条件){
    //执行体
        执行语句1;
        执行语句2;
        ......
    }

如果判断条件成立 就执行执行体(大括号中的语句)
* 格式二:

    if(判断条件){
        执行体1
    }else{
        执行体2
    }

如果判断条件成立 就执行执行体1,否则就执行执行体2
* 格式三:

    if(判断条件1){
            执行体1
    }else if(判断条件2){
            执行体2
    }else if(判断条件3){
            执行体3
    }else{
            执行体4
    }
 ```
如果判断条件123都不成立,执行执行体4<br>
**注意**:根据具体情况来具体分析选择合适的格式
### switch语句
switch 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。</br>
switch的**结构**:
    switch (值) {
    case value1:
        执行体1
        break;
    case value2:
        执行体2
        break;
    ......
    default:上述都不符合
        执行体3
        break;
    }

“`
switch的执行流程
    switch的执行用key(值)和value1进行匹配,匹配成功执行执行体1
    没匹配上就继续向下匹配value2,匹配成功执行执行体2
    ……
    如果都没匹配上 就执行default后面的执行体
switch 语句有如下规则
* switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串类型了,同时 case 标签必须为字符串常量或字面量。
* switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
* case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。
* 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。
* 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。
* switch 语句可以包含一个 default 分支,该分支必须是 switch 语句的最后一个分支。default 在没有 case 语句的值和变量值相等的时候执行。default 分支可以不需要 break 语句。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java程序员必须知道的10个调试技巧

转自:JAVA开发者联盟 调试可以帮助识别和解决应用程序缺陷,在本文中,作者将使用大家常用的的开发工具Eclipse来调试Java应用程序。但这里介绍的调试方法基本都是通用的,也适用...
  • GePriniusce
  • GePriniusce
  • 2016年08月07日 09:57
  • 894

杰神之Java第一课

Java初识
  • lyj243719866
  • lyj243719866
  • 2017年12月27日 19:50
  • 156

杰神之Java合并流的使用

SequenceInputStream合并流 作用: 可以把多个文件合并成一个文件 构造方法(两种): 1.参数是 迭代器 是Vector特有的 该Vector要保存的是InputStrea...
  • lyj243719866
  • lyj243719866
  • 2018年02月05日 20:53
  • 8

杰神之Java泛型的应用

泛型 /* * 保存字符串 * ArrayList E就代表 要保存的元素类型 * 后面的尖括号 要跟前面填的泛型保持一致 * 如果前面声明了泛...
  • lyj243719866
  • lyj243719866
  • 2018年01月22日 21:41
  • 30

杰神之Java类和对象的关系

Java 类和对象 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。 类:类是一个模板,它描述一类对象的行...
  • lyj243719866
  • lyj243719866
  • 2018年01月08日 21:39
  • 151

BZOJ 4407: 于神之怒加强版|莫比乌斯反演

不会搞数学公式很苦恼!! flag:会写数学公式之后一定好好写一发题解 非常感谢龙爷(sd第一男选手!!可惜神犇都不写blog)提供线性筛做法 2.16————————————————- 一下...
  • ws_yzy
  • ws_yzy
  • 2016年02月15日 20:34
  • 1318

杰神之Java接口JDK1.8新特性

Java接口 什么是接口? 接口其实也就是规则. 为什么要有接口? 因为在java中只有不能多继承,只能单继承多层继承,所以有时候想要多继承的时候就可以用到接口.在java中不叫继承接口,而是...
  • lyj243719866
  • lyj243719866
  • 2018年01月15日 20:55
  • 18

于神之怒

题目大意求∑ni=1∑mj=1gcd(i,j)k\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^k n,m,k
  • WerKeyTom_FTD
  • WerKeyTom_FTD
  • 2016年01月08日 19:37
  • 481

杰神之Java构造方法和静态方法

Java构造方法和静态方法构造方法一个类 可以有多个构造函数。构造函数的主要作用 一是用来实例化该类。二是 让该类实例化的时候执行哪些方法,初始化哪些属性。 * 注意事项 1.如果你没写无参构造方...
  • lyj243719866
  • lyj243719866
  • 2018年01月09日 21:36
  • 121

【BZOJ4407】于神之怒加强版

Description给下N,M,K.求 Input输入有多组数据,输入数据的第一行两个正整数T,K,代表有T组数据,K的意义如上所示,下面第二行到第T+1行,每行为两个正整数N,M,其意义如上...
  • CreationAugust
  • CreationAugust
  • 2016年02月16日 10:18
  • 1402
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:杰神之Java中的程序执行流程
举报原因:
原因补充:

(最多只允许输入30个字)