java流程控制
来源:互联网 发布:二战法国知乎 编辑:程序博客网 时间:2024/04/29 10:20
Java流程控制
分支结构
用于根据条件来选择性的执行某段代码;
- if条件语句
使用布尔表达式或布尔值作为分支条件来进行分支控制;有三种形式,if;if,else;if,else if,else;
第一种形式if (logic expression) { statement...}第二种形式if (logic expression) { statement...} else { statement...}第三种形式if (logic expression) { statement...} else if (logic expression) { statement...} else { statement...}
建议使用过程中不要省略if、else if、else 后面的花括号(具备更好的可读性和减少错误的可能);
- switch条件语句
switch后面只能跟byte、short、char、int四种整数类型,枚举类型,java.lang.String类型(java7开始,不能是StringBuffer,StringBuilder类型);
switch(expression) { case condition1: statement...; break; case condition2: statement...; break; case condition3: statement...; break; default: statement...;}
因为switch语句执行时是先求出expression表达式的值,然后拿这个表达式去跟case标签后面的值进行比较,如果遇到相等的值,开始执行这个case后面的代码,就不再与后面的case,default标签的值进行比较,直到遇到break,才会结束;所以在使用中,每个case后面需加上break,除非你希望程序继续执行当前case外的代码块;
循环结构
用于根据循环条件重复执行某段代码;
- while循环
init_statement;//初始化语句while(test_expression) {//循环条件 statement; iteration_statement;//迭代语句}
while每次循环前都会对test_expression循环条件进行判断,如果为true,则执行循环体,否则跳过循环体;注意,如果在while循环条件的表达式的括号加;(eg:while(test_expression);{}),则将会进入死循环状态;
- do while循环
do while 与 while 的区别在于,while总是先判断条件,条件为真,才执行循环体;而do while 是先执行循环体再判断循环条件,如果为真则继续执行,否则退出循环体;
init_statement;//初始化语句do { statement; iteration_statement;//迭代语句} while (test_expression);//循环条件
- for循环
for(init_statement; test_expression; iteration_statement) { statement;}增强for循环for(type element: array){ statement;}
执行时先执行初始化语句 init_statement,初始化语句只在循环开始前执行一次;每次执行循环体前先进行 test_expression循环条件值的判断,如果循环条件返回 true,才执行循环体;每次循环体执行完毕后,执行迭代语句 iteration_statement。
for 循环与 while,do while 循环不一样;由于 for 循环的迭代语句没有跟循环体放在一起,所以不管是否遇到 continue 语句来结束本次循环,迭代语句都会被执行;而 while 和 do while 语句的迭代语句是和循环体放在一起,如遇到 continue 语句来结束循环体,则迭代语句(迭代语句放在continue后面)不会被执行;
- Java中的流程控制
- java之流程控制
- java的流程控制
- Java流程控制语句
- Java流程控制
- java 控制流程
- Java控制流程
- Java流程控制
- Java 控制执行流程
- Java流程控制
- java流程控制语句
- java控制执行流程
- java流程控制语句
- java控制流程
- java流程控制语句
- Java - 流程控制
- java 控制执行流程
- JAVA流程控制
- 使用 EXISTS 代替 IN 和 inner join
- 生成1~n的排列
- 你真的会用三目运算符吗?
- 关于NSURLSession在下载失败后的断点续传
- linux内核(kernel)版本号的意义
- java流程控制
- 《深入浅出MySQL:数据库开发、优化与管理维护(2nd)》第31章之MySQL半同步复制搭建学习笔记
- Rxjava(1.基本使用)
- 鸡腿の游戏_纪中1737
- gdufe acm 1086 互质数
- [机房练习] [线段树] [RMQ] [区间gcd] 2017.1.21
- 微信小程序入门七:数据绑定
- Jenkins学习七:Jenkins的授权和访问控制
- nginx笔记