目录
一、控制语句的分类
- 控制语句的出现可以让我们的程序更具有逻辑性/条理性.可以使用控制语句来实现各种"业务"!
- 控制语句的具体分类如下图所示:
二、选择语句的具体介绍
选择语句也可以做分支语句.
1.if语句
if语句是分支语句,也可以叫做条件语句!
格式
if语句的格式有四种:
图中的"布尔表达式"是指结果为布尔类型的表达式,如a==b,a>b等.其次,一个大括号就是一个分支.
执行原理
if语句的四种格式相对应的执行原理:
注意1: 如果分支中的"Java语句;"只有一句话时,那么规格中的大括号可以省略!如下列代码:
int a=10;
int b=9;
if(a>b)
System.out.println("true");
else
System.out.println("false");
注意2: 控制语句之间是可以嵌套的!
if(10==10){
if(1==1){
System.out.println("相等");
}else{
System.out.println("不相等");
}
}else{
System.out.println("都不相等");
}
例题
那来个题,看你到底缕清楚没哈!
这个代码有问题吗?如果有,请说明哪一行出错了?如果没有,请输出答案!(答案在评论区哟!)
//练习一:
if(true)
System.out.println("男");
System.out.println("Hello");
else
System.out.println("女");
2.switch语句
格式
switch语句的格式:
格式:
switch(值){
case 值1:
java语句;
break;
case 值2:
java语句;
break;
default:
java语句;
break;
}
注意事项
- switch语句所支持的数据类型: byte, short, char, int, String ( byte,short,char 数据类型会自动转换成Int类型. 并且JDK1.8之前不支持String类型,只支持int类型 )
- case后面的值必须是常量,不能是变量.
- "值"与"值1","值2"比较的时候会使用"=="进行比较!
- default默认项,可以省略.
执行原理
如果分支中没有break语句,此时就会发生case穿透现象!匹配到值后,未遇到Break,会接着往下执行
int a=3;
switch(a){
case 1:
System.out.println("今天周一");
case 3:
System.out.println("今天周三");
case 4:
System.out.println("今天周四");
default:
System.out.println("今天周日");
}
//输出的是今天周三,今天周四,今天周日 ----->case穿透现象
//如果a=5,输出的是今天周日
三、循环语句的具体介绍
为什么要有循环语句呢?
如果有的代码需要重复执行,为了减少代码量就使用了循环语句,解决了代码的复用性
1.for循环语句
格式以及执行原理
注意事项
- 初始表达式最先执行,并且在整个循环中只执行一次.
- 循环条件的结果必须是一个布尔类型.
- 控制循环语句控制着循环次数. 也就是说会更新某个变量的值,使循环条件从true变为false,从而终止循环
例题
输出1-10:
for(int i=1;i<=10;i++){ //i属于for循环的局部变量,循环结束后,i的内存就释放了
System.out.println(i);
}
for循环的嵌套
//格式如下:
for( ; ; ){
for( ; ; ){
}
}
for循环的嵌套实例:
2.while和do...while循环语句
格式及执行原理
while循环:
while循环可能循环的次数为0~n次!
do...while循环:
do....while循环可能循环的次数为1~n次! (至少也会执行一次!这也是和while的区别点!)
3.死循环
- for的死循环: for( ; ; ){ }
- while的死循环: while( true ){ }
- do...while的死循环: do{ }while(true);
四、转向语句的具体介绍
1.break;
注意事项
- break语句是一个单词成为一个完整的Java语句.
- break用在两个地方:a:switch语句中,用来终止循环的执行. b:用在循环语句中,用来终止循环的执行.
- 在for循环嵌套中,内层循环的break语句会终止结束掉内存的循环.也就是终止掉离它近的循环
指定终止循环
a:for(int i=0;i<3;i++){
b:for(int j=0;j<3;j++){
if(i==j){
break a; //终止的指定a循环,即外层循环
}
System.out.println(i+"和"+j);
}
}
2.continue;
终止"本次"循环,直接进入下一次的循环继续执行!
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
if(i==j){
continue; //当i==j时,跳出此次循环,继续执行下一次循环.当i==j==0时,跳出j=0的循环继续j=1的循环
}
System.out.println(i+"和"+j);
}
}
3.return;
(return语句的介绍在这里! -------------------> !!点击这里!! )
五、练习题
(咱们看了这么多了!是不是感觉差不多了?咱来练一练题吧!看看是不是一看就会,一做就废!)
1.键盘录入,根据输入的数字来判断星期几! 同类型题点这里:输入年月,输出该月的天数
2.打印九九乘法表 2.3.4答案在这里!
3.计算1000以内所有不能被7整除的整数之和.
4.计算1+2-3+4-5+6-7......+100.
好啦!这次小编的分享就此而止啦!!!友友们开动吧!!!
(小编也在努力学习更多哟!以后会多多分享哒!)
希望对友友们有所帮助!!!!