黑马 程序员——Java基础---流程控制

 黑马程序员——Java基础---流程控制

 

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------

 

一.概述

  Java提供了两种基本的流程控制结构:分支结构和循环结构。其中分支结构用于是根据条件来选择执行某段代码,循环结构则是根据循环条件重复执行某段代码。分支语句有if和switch两种,循环语句有for、while和do while三种。除此之外,jdk1.5还提供了foreach循环,同时java还提供了break和continue来控制程序的循环结构。

 

二.正文

1、顺序结构

  这是程序最常见的结构,如果没有流程控制,java就会从上到下一次执行每条语句,这个没什么可说的。

 

2分支结构

2.1 if条件语句

  If有三种形式:

  第一种:

if(logic expression)



{



       statement...



}   

   第二种:

if(logic expression)



{



       statement...



}



else



{



       statement....



}

  第三种:

if(logic expression)



{



       statement...



}



else if(logic expression)



{



       statement...



}



....\\可以写零个和多个else if



else



{



       statement...



}

   注意:if括号里面的内容只能是一个逻辑表达式,返回值只能是true或false。第三种形式的多行代码称为代码块,通常被当成一个整体执行,除非遇到break、return、contin等关键字,或者遇到异常。

 

2.2 switch分支语句

      格式如下:

switch(expression)



{



       case condition1:



       {



              statement(s)



              break;



       }



       case condition2:



       {



              statement(s)



              break;



       }



       ......



       case conditionN:



       {



              statement(s)



              break;



       }



       default:



       {



              statement(s)



       }



}

  注意:switch语句后的expression表达式的数据类型只能是byte、short、char、int四个整数类型和枚举类型。

 

3、循环结构

3.1 while循环语句

      格式如下:

while(expression)



{



       statement;



}

  注意:while(expression);是个陷阱,后面千万不能加分号,否则会造成死循环;还有一定要保证while有跳出循环的时候,否则也会成为死循环。

 

3.2 do while循环语句

      格式如下:

do



{



       statement;



}while (expression);

  注意:与while不同的是,do while后必须有一个分号,这个分号表明循环结束;while先判断条件,如果为真则执行循环体,do while则是先执行循环体,然后才判断条件,为真则继续,否则结束。

 

3.3 for 循环

      格式如下:

for([init_statment];[expression];[iteration_statement])



{



       statement;



}

  注意:init_statment初始化语句只执行一次,然后判断expression是否为真(expression只能是逻辑表达式),如果为真就执行循环体,循环体结束后执行iteration_statement,然后再判断expreeion,如果为真则继续,否则结束。

 

4、控制循环结构

4.1 使用break结束循环

      break是用于完全结束一个循环,当有些时候我们需要在某种条件出现时强行终止循环,而不是等到循环条件为false才退出循环。

      注意:一般情况break只是结束当前循环,但是如果break后面紧跟一个标签,可以结束标签所标识的外层循环(标签只有放在循环语句之前才有作用)。例如:

outer:



for(int i=0; i<5; i++)



{



       for(int j=0; j<3; j++)



       {



              if(j == 1)



                     break outer;



       }



}

 

4.2 使用return结束方法

      return并不是专门用于结束循环的,而是结束一个方法。如下:

public class Test



{



       public static void main(String[] args)



       {



              for( int i=0; i<3; i++)



              {



                     if(i == 1)



                            return;



              }



       }



}

当i==1是运行到return时,直接就结束当前方法,这里是结束main方法(main方法结束也意味着程序结束)。

 

三. 总结

      这是我对流程控制结构的基本使用方法和格式做的简单的总结,其实还有比较特殊的情况,比如for(;;)和while(true)是无限循环。循环还可以嵌套使用,大循环里套了小循。for循环对比while,for循环括号内变量使用完了就在内存中释放了,也就是说循环结束后就无法使用,while则相反,循环结束后变量还存在,能继续使用。

你可能感兴趣的:(java基础)