Java 循环结构
if选择结构
- if单选择结构 if (s.equals(“Hello”))中equals:判断字符串是否相等
- if双选择结构if(){ } else{}
- 多选择结构2[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dmHhZo1b-1644155733717)(C:\Users\magicianzz\AppData\Roaming\Typora\typora-user-images\image-20220129024947603.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-etZW67ii-1644155733718)(C:\Users\magicianzz\AppData\Roaming\Typora\typora-user-images\image-20220129025016318.png)]
if的PS:
-
if语句至多有一个else语句,else语句在所有的else if 语句之后 。if语句至多有一个else语句,else语句在所有的else if 语句之后 。
-
if语句可以有若干个else if 语句,它们必须在else语句之前。
-
一旦其中一个else if 语句检测结果为true,其他的else if语句都将跳过执行
switch多选择语句
- 多选择结构还有一个实现方法就是switch case语句
- switch case 语句判断一个变量一系列值中某个值是否相等,每个值被称为一个分支
- switch语句中的变量类型可以是:
- byte、short、int或者char。
- 从Java SE 7开始表达式结果可以是字符串
- switch 支持字符串String类型了
- 同时case标签必须为字符串常量或自变量。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I8EGygMs-1644155733718)(C:\Users\magicianzz\AppData\Roaming\Typora\typora-user-images\image-20220129212305736.png)]
public class Switch1 {
public static void main(String[] args) {
//case穿透 //switch 匹配一个具体的值
char grade ='c';
switch(grade){
case'a':
System.out.println("优秀");
break;
case'b':
System.out.println("良好");
break;
case'c':
System.out.println("及格");
break;
case'd':
System.out.println("不合格");
break;
default:
System.out.println("未知等级");
while循环
-
只要布尔表达式为true,循环就会一直循环下去
-
我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环
-
少部分情况需要循环一直执行,比如服务器的请求响应监听等
-
循环条件一直为true就会造成无限循环【死循环】,我们正常的业务编程中应该尽量避免死循环。会影响程序性能或者造成程序卡死崩溃!
-
思考:1+2+3+4…+100=?
while和do while差别
- while先判断后执行。do while 是先执行后判断!
- Do…while总是保证循环体会被至少执行一次!这是他们的主要差别
For循环
- for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构
- for循环执行的次数是在执行前就确定的。格式如下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GySqUfan-1644155733719)(C:\Users\magicianzz\AppData\Roaming\Typora\typora-user-images\image-20220130225027841.png)]
增强for循环
- Java5开始引用一种主要用于数组或集合的增强型for循环
- Java增强for循环语法格式如下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Eyqro7mJ-1644155733719)(C:\Users\magicianzz\AppData\Roaming\Typora\typora-user-images\image-20220203224104223.png)]
- 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等
- 表达式:表达式是要访问的数组名,或者是返回值为数组的方法
breal continue
- break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break也在switch语句中使用)
- continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
- 关于goto关键词
- goto关键词很早就在程序设计语言中出现。尽管goto仍是Java的一个关键词,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键词的身上,我们仍然能看出来一些goto的影子…带标签的break和continue。
- 表现是指后面跟一个冒号的标识符,例如:label
- 对Java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,他们就会存到标签的地方
循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,他们就会存到标签的地方