java控制流程(二)

一、循环结构

有一天你的女朋友让你写一百遍我爱你,你是要一行一行的手写出来,还是利用编程的循环结构写出来?

  1. while

    语法:

    表达式返回的为boolean值
    while(表达式){
        需要循环的语句
    }
    

    实例:

    public class Test(){
        public void medth(){
            //定义一个变量
            int a=1;
            //此时的a=1 每次循环让a+1 当a<=100的时候 循环就终止了
    		while(a<100){
                System.out.println("我爱你");
                a++;
            }
            //此时的a输出为100
            System.out.println(a);
        }
    }
    

    注:1.这个循环只要条件为true 就会一直循环下去,造成死循环,如果出现这个情况就需要终止程序

    2.while循环的特点就是先判断,在执行,如果判断结构返回的是错的,就不会执行循环

  2. do…while

    语法:

    do{
        需要循环的语句
    }while(表达式)
    

    实例:

    public class Test(){
        public void medth(){
            //定义一个变量
            int a=1;
            //此时的a=1 每次循环让a+1 当a<=100的时候 循环就终止了
    		do{
                 System.out.println("我爱你");
                 a++;
            }while(a<100);
            //此时的a为100
            System.out.println(a);
        }
    }
    

    注:1.do…while的特点就是先执行,后判断 ,在执行

    - do…while和while的区别:

    do…while循环是不管条件成不成立,先执行一次,在判断

    while循环是先判断,如果条件成立,才会执行

  3. for

    语法:

    for(初始表达式;循环条件;操作表达式){
        需要循环的语句
    }
    

    实例:

    public class Test(){
        public void medth(){
            //定义一个变量  用来累积循环的次数
            int num=0;
            for(int i=0;i<100;i++){
                System.out.println("我爱你");
               num++;
            }
            //此时的num=100
            System.out.println(num);
        }
    }
    

    for循环的执行流程:

    1. 首先执行第一步初始化条件,定义了变量i(int i=1)
    2. 然后进行第二步,条件判断,判断条件i是否满足条件,如果满足条件,执行需要重复的执行语句
    3. 执行完需要重复的执行语句时,条件变化,变量i自身发生改变
    4. 即在条件变化—>条件判断—>重复执行的语句这三部中循环执行。当判断条件不满足的时候,循环结束
  4. 九九乘法表

    public class Test(){
        public medth(){
            for (int i=1;i<=9;i++){
              for (int j=1;j<=i;j++){
                  System.out.print(j+"*"+i+"="+j*i+"\t");
              }
              System.out.println();
          }
        }
    }
    

    输出结果:

    1*1=1	
    1*2=2	2*2=4	
    1*3=3	2*3=6	3*3=9	
    1*4=4	2*4=8	3*4=12	4*4=16	
    1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
    1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
    1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
    1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
    1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	
    
  5. 增强for循环

    语法:

    for(变量类型 变量名称 : 需要遍历的集合或者数组){
    	需要执行的语句
    }
    

    实例:

    import java.util.ArrayList;
    import java.util.List;
    public class Test(){
        public medth(){
            //在这里定义一个集合
            //注意上面的import  想要定义集合就必须导入上面的两个包
        	List<int> list=new ArrayList();
            //向集合中添加String类型的数据
            list.add("张三"); 
            list.add("李四");
            for(String name:list){
                System.out.println("姓名:"+name);
            }
        }
    }
    

    以上程序输出结果为:

    姓名:张三
    姓名:李四
    

注:

  1. 在jdk1.5之后提出,专门用来遍历数组和集合
  2. 在遍历的过程中,不能对集合中的元素进行增删操作

二、break&continue

break:

  • break用于switch语句中,终止switch语句
  • break用于循环的时候,跳出循环
public class Test(){
    public void medth(){
        for(int i=0;i<10;i++){
        	if(i==5){
                break;
            }
            System.out.println("此时的i="+i);
        }
    }
}

以上程序执行结果为:

此时的i=0
此时的i=1
此时的i=2
此时的i=3
此时的i=4

可与看出,我们在循环体重使用break,当i=5的时候,就会跳出本次循环,不会再执行下一轮的循环

continue:

  • continue用在循环中,跳出本次循环,继续执行下一次循环
  • continue只能用在循环体中
public class Test(){
    public void medth(){
        for(int i=0;i<10;i++){
        	if(i==5){
                continue;
            }
            System.out.println("此时的i="+i);
        }
    }
}

以上程序执行结果为:

此时的i=0
此时的i=1
此时的i=2
此时的i=3
此时的i=4
此时的i=6
此时的i=7
此时的i=8
此时的i=9

可以看出,我们在循环体中使用continue,当i=5的时候,就会跳过本次循环,进入下一次循环,直到循环结束

posted @ 2020-09-04 10:44  yuanStudy  阅读(184)  评论(0)    收藏  举报