java系统学习(二) --------java程序设计中的流程控制
2015-08-18 11:16
405 查看
流程控制 用通俗的话说 就是 控制代码执行的顺序,什么时候开始,什么时候停止,什么时候循环等等。
要控制好 代码的执行顺序,我们需要了解以下知识:
1.编程风格
2.条件语句
3.循环语句
4.中断与继续的语句
5.分支语句
6.返回语句
7.疑难问题和总结
这三个东西注意好了,就能让我们的代码易读。就不会在复杂的流程控制中把自己绕晕。
![](http://img.blog.csdn.net/20150817103716188?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这里的执行顺序是:
首先执行初始化表达式一次。
然后到判断表达式
当满足判断表达式时,会执行花括号中的代码
执行完之后 进行 递增或者递减表达式
再回到判断
当满足判断表达式时,会执行花括号中的代码
执行完之后 进行 递增或者递减表达式
直到 不满足判断表达式则 循环停止。
ps:
1.使用break能跳出整个for循环。
2.使用continue能跳过当前判断,进行下一个判断
这里从0开始进入判断,满足条件,count 自加
一直到i自加到10时不再满足条件,for循环停止。
从0到9一共进行了10次自加。
则 输出为10
满足条件时 执行花括号中的代码
再继续判断是否满足条件
直到 不满足条件则 循环停止。
先执行一次 花括号中的 代码
再判断条件 条件满足 再执行一次
条件不满足则 不再执行
我们直接看下面两个例子来理解:
我们直接通过一个例子来看continue怎么用
因为写太多的if else 太繁琐。
否则输出结果为:
2
3
无匹配情况
就是跳出当前的子程序或者函数,回到主程序中。
return的意思是这个小函数已经结束了,返回到主程序中。
返回i到主函数中
无限循环的多用while
3个以下可用if
要控制好 代码的执行顺序,我们需要了解以下知识:
1.编程风格
2.条件语句
3.循环语句
4.中断与继续的语句
5.分支语句
6.返回语句
7.疑难问题和总结
编程风格
主要是三个方面的东西需要留意,缩进,空行,和注释。这三个东西注意好了,就能让我们的代码易读。就不会在复杂的流程控制中把自己绕晕。
条件语句
用法一
if(){ }
用法二
if(){ }else{
}
用法三
if(){ }else if(){ }
用法四
if(){ }else if(){ }else{
}
例子
int a=12; int b=10 if(a>b){ System.out.println("a比b大"); }else if(a==b){ System.out.println("a等于b"); }else{ System.out.println("a比b小"); }
循环语句
循环语句用于简化重复的操作。比如 自加10次。for循环
语句结构
for(初始化表达式;判断表达式;递增或者递减表达式){ }
这里的执行顺序是:
首先执行初始化表达式一次。
然后到判断表达式
当满足判断表达式时,会执行花括号中的代码
执行完之后 进行 递增或者递减表达式
再回到判断
当满足判断表达式时,会执行花括号中的代码
执行完之后 进行 递增或者递减表达式
直到 不满足判断表达式则 循环停止。
ps:
1.使用break能跳出整个for循环。
2.使用continue能跳过当前判断,进行下一个判断
例子
int count=0; for(int i=0;i<10;i++){ count++; } System.out.println(count);
这里从0开始进入判断,满足条件,count 自加
一直到i自加到10时不再满足条件,for循环停止。
从0到9一共进行了10次自加。
则 输出为10
while循环
语句结构
用法一
while(条件){ }
满足条件时 执行花括号中的代码
再继续判断是否满足条件
直到 不满足条件则 循环停止。
例子
int a=10; while(a>6){ System.out.println(a); a--; } 输出结果为: 10 9 8 7
用法二
do{ } while(条件);
先执行一次 花括号中的 代码
再判断条件 条件满足 再执行一次
条件不满足则 不再执行
例子
int a=10; do{ System.out.println(a); a--; }while(a>6); 输出结果为: 10 9 8 7
中断与继续的语句
中断控制语句break
前面在for循环中提到过break,起到跳出循环的作用我们直接看下面两个例子来理解:
不带break的例子
for(int i=0;i<10;i++){ System.out.println(i); } 输出结果: 0 1 2 3 4 5 6 7 8 9
带break的例子
for(int i=0;i<10;i++){ System.out.println(i); if(i==2){ break; } } 输出结果: 0 1 2
继续控制语句continue
for循环中我们提到过continue是跳出本次循环,继续下一次的判断我们直接通过一个例子来看continue怎么用
例子continue控制只输出奇数
for(int i=0;i<10;i++){ if(i%2==0){ continue;//如果i的余数为0,也就是为偶数时,跳出本次循环 } System.out.println(i); } 输出结果: 1 3 5 7 9
分支语句
当判断条件太多时,我们就可以考虑使用switch分支语句。因为写太多的if else 太繁琐。
语句结构
switch(参数){ case 条件: 执行语句; break; case 条件: 执行语句; break; case 条件: 执行语句; break; default:执行语句; }
例子
int i=2; switch(i){ case 1: System.out.println("1");break; case 2: System.out.println("2");break; case 3: System.out.println("3");break; default:System.out.println("无匹配情况"); } 输出结果: 2这里有个细节,break;不能漏掉。
否则输出结果为:
2
3
无匹配情况
返回语句
return就是跳出当前的子程序或者函数,回到主程序中。
用法一
public void set(int a,int b) { i=a*b; return; //默认语句 }
return的意思是这个小函数已经结束了,返回到主程序中。
用法二
public int set(){ return i=a*b; }
返回i到主函数中
疑难问题和总结
普通循环使用for还是while
一般有上限的循环多使用for无限循环的多用while
什么使用用分支switch什么时候用条件if else
条件多于 3个以上的可以考虑使用switch3个以下可用if
相关文章推荐
- 什么是java线程的中断(转)
- java接口和抽象类
- Java中的super()研究
- java 类集框架总结
- Spring整合Mybatis
- Java中Model1和Model2
- java - MD5Util
- 时间工具类积累
- 邻接表有向图 之 Java详解
- Spring事务隔离级别及设置
- java时间的获取
- leetcode-173:Binary Search Tree Iterator(Java)
- 【转】JAVA的动态代理
- leetcode-173:Binary Search Tree Iterator(Java)
- 邻接矩阵有向图 之 Java详解
- 使用maven 构建spring mvc项目
- Spring,SpringMVC,Mybatis (SSM)框架的搭建
- maven引用jar报错:spring-core:jar must be a valid version but is '${spring.version}
- 解决SpringMVC的@ResponseBody返回中文乱码
- jsoup-提示java.net.SocketTimeoutException:Read timed out