Java基础之分支结构循环结构
流程控制语句if(分支结构)
流程控制:流程就是指代码运行过程。控制就是说什么场景可以执行,什么场景不能执行。
1.if语句第一种形式
格式:if(表达式){
执行的语句;
}
2.if语句第二种形式
格式:if(表达式){
if的执行语句;
}else{
else的执行语句;
}
3.if语句第三种形式
格式:if(表达式1){
语句1;
}else if(表达式2){
语句2
}
...
else{
else语句;
}
说明:
表达式必须是boolean(true false)类型。
如果表达式为true,那么执行大括号中的语句。
如果表达式为false,那么不执行大括号中的内容。
if else 的语句中,只要执行了if或者else的语句,那么整个语句的的判断就结束。
if 语句可以单独存在,else语句不能单独存在。
if else if 系列语句,可以没有else的。
循环语句
循环:指同一个逻辑,需要多次执行,使用循环。
1.for循环
for的语法格式:
for( 初始化值(定义变量) ; 判断语句 ; 变量值的变化(自增或自减)){
逻辑语句;
}
说明:
for循环的初始化值执行一次
判断语句,必须是boolean类型的逻辑
for中的判断条件只要成立,那么循环就执行
练习:利用for循环打印1-100的和
public static void main(String[] args) {
// sum值作为1-100的总和
int sum = 0;
//for 起始值1, <=100 , ++
for(int i = 1 ; i <= 100 ; i++){ sum = sum + i; }
System.out.println(sum);
}
2.while循环
格式:
while(表达式){
while语句;
}
说明:
表达式必须是boolean类型。
表达式为true,那么执行大括号中的while语句。
表达式为false,那么while大括号中的语句不执行,while结束。
注意:
写代码的时候,一定要注意,千万不要造成死循环。死循环发生的原因,判断条件永远为true。
for循环和while循环使用区别:
for一般使用于值的变化规律性强,可预计循环次数。
while使用,一般是不明确知道循环的次数。
3.循环跳出语句
continue:关键字,表示停止本次循环,继续执行下一次循环。
break:关键字,表示直接将本层循环全部终止,break每次只能结束一层循环。
return: 表示返回,将整个方法结束。
System.exit(0); :系统停止(代码不能运行了)。
练习1:打印出1-10之间的偶数
public static void main(String[] args) {
// 要求: 1-10之间的所有偶数,打印出来(continue)
// continue: 表示结束本次循环,接着执行下一次循环,continue之后的循环体代码不执行
for(int i = 1 ; i <= 10 ;i++){
//判断这个是是不是偶数
if( i % 2 == 1){
continue;// 结束本次循环,接着执行i++,进行下一次循环
}
System.out.println(i);
}
}
练习2:打印1-10之间的整数,当遇到5的时候,循环结束
public static void main(String[] args) {
// 要求:打印1-10之间的整数,当遇到5的时候,循环结束(break)
// break: 表示结束循环,break之后的循环体代码不执行
for(int i = 1 ; i <= 10; i++){
if(i == 5){
break;// 结束整个循环
}
System.out.println(i);// 1-4被打印出来,但是不打印5,因为5还没打印呢,循环就结束了
}
}
4.嵌套循环
概念:每次循环内部的执行逻辑,恰巧又是另外一个循环。
练习:打印9*9乘法表
public static void main(String[] args) {
for(int i = 1;i<=9;i++){
for(int j = 1;j<=i;j++){
int m = i*j;
System.out.print(j+"*"+i+"="+m+" ");
}
System.out.println();
}
}
最新文章
- 学习.Net的经典网站
- objdump 分析
- asp.net webapi 序列化为xml 时实体属性增加<;![CDATA[]]>;防止特殊字符
- DP:Cow Exhibition(POJ 2184)(二维问题转01背包)
- SublimeText 插件
- CMS如何提供XML格式的接口
- [ActionScript 3.0] AS3 深入理解Flash的 应用程序域Application Domains
- JavaWeb实现文件上传下载功能实例解析
- 设计模式UML图
- 一个初学者的辛酸路程-python操作SQLAlchemy-13
- GO开发[二]:golang语言基础
- 邓_Jquery测试题
- Android使用Fiddler模拟弱网络环境测试
- hdu 3294 Girls&#39; research(manacher)
- python网络爬虫笔记(三)
- NOIP 普及组 2016 回文日期
- update date and keep time
- openmodelica警告及错误
- 关于Select选中问题
- java 多线程6: 中断机制 优雅的终止java线程