Java知识点复习(五)流程控制之循环语句

  1. 1. 1、循环语句🔥
    1. 1.1. 1.1、for 循环🔥
    2. 1.2. 1.2、while 循环🔥
    3. 1.3. 1.3、do-while 循环🔥
    4. 1.4. 1.4、循环语句总结

1、循环语句🔥

1.1、for 循环🔥

  • 语法: for (初始表达式; 条件表达式; 迭代语句) { 循环体 }

    初始表达式:定义有初始值的变量 例如 int i=1;

    迭代语句: 例如:++i i++ i+=2 …

    循环体: 每次循环要执行的内容,1.输出语句 2.变量 3.流程控制语句

  • 理解:

    先执行初始表达式,然后执行条件表达式,如果成立,执行循环体,然后执行迭代语句,然后再次执行条件表达式,直到条件表达式不成立为止。

for 循环流程图

案例1:打印3次HelloWorld

代码实现:

//普通写法:
public class Demo01 {
public static void main(String[] args) {
System.out.println("HelloWord");
System.out.println("HelloWord");
System.out.println("HelloWord");
}
}

重复性动作,可以用for循环语句解决

public class ForExample {
public static void main(String[] args) {
//int i=1;是一个局部变量,作用域是for的循环体
for(int i=1;i<=3;i++){
System.out.println("HelloWord");
}
}
}

运行结果:

案例2:打印数字1到100

public class ForExample02 {
public static void main(String[] args) {

for(int i=1;i<=100;i++){
System.out.println(i + " ");
}
}
}

运行结果:

  • 注意问题:

    1.死循环问题(条件恒成立)

    一直重复输出System.out.println( ) 内容

public class Demo01 {
public static void main(String[] args) {

// for(;;){
// System.out.println("HelloWord");
// }

for(;true;){
System.out.println("HelloWord");

}
}
}

2.初始表达式作用域问题

public class Demo02 {
public static void main(String[] args) {
int i;
for (i=1;i<=5;i++){
System.out.println("hello!"+i);// 1 2 3 4 5
}
System.out.println(i); // 6
}
}
// 输出结果为:1 2 3 4 5 6

例题:

判断下面哪个选项是错误的(B)
A.int i=1; for( ; i<=5 ; i++){ }
B.int i=1; for( i ; i<=5 ; i++){ }
C.int i; for( i=1 ; i<=5 ; i++){ }
D. for( ; ; ){ }

3.迭代语句问题

public class Demo03 {
public static void main(String[] args) {
for(int i=10;i>0;i--){
System.out.println("hello"); //输出 3次 hello
}
}
}

4.多个初始表达式,多个迭代语句

public class Demo04 {
public static void main(String[] args) {
for(int i=1,j=10;i<j;i++,j--){
System.out.println(i+"——"+j);
}
}
}

运行结果:


1.2、while 循环🔥

  • 语法: while (条件表达式) { 循环体 }

    理解:条件表达式成立,循环体执行,然后继续判断条件表达式,直到条件表达式不成立为止。

案例:用while 循环 打印3次HelloWorld

public class WhileExample {
public static void main(String[] args) {
int i = 1;
while(i<=3){
System.out.println("HelloWord");
i++;
}
}
}

运行结果:

  • 注意问题:
  1. 死循环(一直重复输出内容)
public class WhileExamle02 {
public static void main(String[] args) {
while (true){
System.out.println("我要变有钱。。。");
}
}
}

1.3、do-while 循环🔥

  • 语法: do {循环体} while (条件表达式);

    理解:先执行循环体,再判断条件表达式,如果条件表达式成立,继续执行循环体,直到条件表达式不成立为止。

案例:输出3次HelloWorld

public class DoWhileExamle {
public static void main(String[] args) {
int i = 1;
do{
System.out.println("HelloWord");
i++;
}while(i<=3);
}
}

运行结果:

  • 注意问题:

    1.死循环

    do-while的死循环要比while死循环多执行一次,因为do-while是先执行后判断

public class DoWhileExamle02 {
public static void main(String[] args) {
do {
System.out.println("停不下来。。。");
}while(true);
}
}

1.4、循环语句总结

实际开发中for循环使用最多,while的死循环使用很多,do-while循环使用较少

while和do-while的区别:

while是先判断,后执行

do-while是先执行,后判断

  • 注意:
  1. 所有的循环语句都可以省略大括号
 //省略循环语句中的大括号
// 例:
public class loop {
public static void main(String[] args) {

//for循环
for (int i=1;i<=3;i++)
System.out.println("HelloWord");

//while循环
int j = 1;
while(j<=3)
/*注:i++需要写在输出语句里面才可以省略大括号,
否则会变成死循环(以下同理)*/
System.out.println("HelloWord"+(j++));

//do-while循环
int x = 3;
do{
System.out.println("HelloWord"+(x--));

}while(x>=0);
}
}

2.只有do-while循环小括号后面有分号,其他的都没有

//例:
public class loop02 {
public static void main(String[] args) {
//do-while循环小括号后面必须加分号 写法正确
int x = 3;
do{
System.out.println("HelloWord"+(x--));
} while (x>=0);

//for循环小括号后加 ; 是错误的
for(int i=1;i<=3;i++); {
System.out.println("HelloWord");
}
int j=1;
//while循环小括号后加 ; 也是是错误的
while (j<=3); {
System.out.println("HelloWord" + (j++));
}
}
}

选择语句就这些内容了,如果发现错误欢迎小伙伴们在评论区指正,感谢阅读。