简介
循环就是满足判断表达式就一直重复执行循环体,.
所以写死循环就是让 判断表达式每次都为true
本篇主要讲java中循环的方式,和退出循环的方式
java中有循环有两种方式
1.while
2.for
退出循环的几种方式
1.自然结束
2.continue
3.break
4.异常
5.return
本篇的代码示例地址: github.
while方式
@Test
void whileDemo(){
int i = 0;
//while循环 表达式返回ture就是进循环, false就结束循环
while (i <= 5){
System.out.println(i++);
}
//do{}while() 不管判断表达式会不会执行,都会执行一遍循环体
System.out.println("do while i其实已经不满足条件了,但是还是会执行一次循环体");
do{
System.out.println(i);
}while(i<5);
}
for方式
@Test
void forDemo(){
int [] arr = {1,2,3,4,2};
//定义一个局部变量 i 每次循环结束 就自增1 然后判断 满足条件就继续跑,不满足就退出循环
//int i = 0; i < arr.length ; i++ 第一 定义变量; 判断条件 ; 一次循环结束会执行 i++
//for
System.out.println("最基础的for写法");
for (int i = 0; i < arr.length ; i++){
System.out.println(arr[i]);
}
//foreach
System.out.println("foreach写法");
for(int value : arr){
System.out.println(value);
}
//lambda 流的形式
System.out.println("lambda 流的形式");
Arrays.stream(arr).forEach((value)-> System.out.println(value));
}
退出循环的几种方式
//退出for
@Test
void endForDemo(){
//1. 自然结束完出去
System.out.println("自然循环结束出去");
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
//2. continue 结束循环中的一次
System.out.println("continue 结束循环中的一次");
for (int i = 0; i < 5; i++) {
if (i == 2){
continue;
}else{
System.out.println(i);
}
}
System.out.println("continue + 标识 结束循环");
continue1:
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println(i + " " +j);
if (j == 2){
continue continue1;
}
}
}
//结束一次for循环 break;
System.out.println("break 结束循环");
for (int i = 0; i < 5; i++) {
System.out.println(i);
if (i == 2){
break;
}
}
//跳出for循环 break + 标识; 跳出到对应标识层 如果一个break 只会结束一层for 如果有两层for,外层还是会继续循环
System.out.println("break + 标识 结束循环");
break1:
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println( i + " " + j );
if (j == 2){
break break1;
}
}
}
//异常方式退出循环
System.out.println("异常方式结束循环 ");
try {
for (int i = 0; i < 5; i++) {
System.out.println(i);
if (i == 2){
throw new RuntimeException();
}
}
}catch (Exception e){
System.out.println("遇到异常了结束循环 ");
}
//return方式 直接返回方法
System.out.println("return 结束循环");
for (int i = 0; i < 5; i++) {
System.out.println(i);
if (i == 2){
return;
}
}
}