Day06
一、循环结构的4个要素
1.初始化条件
2.循环条件 --->是boolean类型
3.循环体
4.迭代条件
1
while(2){
3;
4;
}

执行过程: 1 - 2 - 3 - 4 - 2 - 3 - ... - 2
说明:
1.写while循环千万小型不要丢了迭代条件,一旦丢了,就可能导致死循环
2.我们写程序,要避免出现死循环。
3.for循环和while循环时可以相互转换的!
区别:for循环和while循环的初始化条件部分的作用范围不同
!!!就是指算法上使用的顺序不同。

do-while循环使用
一、 循环结构的4个要素
1.初始化条件
2.循环条件 --->是boolean类型
3.循环体
4.迭代条件

二、do-while循环结构:
1
do{
3;
4;
}while(2);

执行过程: 1 - 3 - 4 - 2 - 3 - 4 - 2 - 3 - 4 .... - 2
说明:
1.do-while循环至少会执行一次循环体!
2.开发中,使用for和while更多一些。较少使用do-while。
循环语句练习心得:
1.无限循环for(;;)或while(true) 2.结束循环的几种方式? 方式一:循环条件部分返回false 方式二:利用break跳出循环
嵌套循环的使用:嵌套即是指多个循环结构的嵌套for(){for(){}}不是难点但需要注意。
1.嵌套循环:将一个循环结构A声明在另一个循环结构B的循环体中,就构成了嵌套循环
2.
外层循环:循环结构B
内层循环:循环结构A
3.说明
1.内层循环结构遍历一遍,只相当于外层循环循环执行一次
2.假设外层循环需要执行m次,内层循环需要执行n次。此时内层循环的循环体一共执行了多少次m * n
循环条件是循环结构核心

//两种跳出循环的两种使用方式:
label:for(){
   for(){
     break;//默认跳出包裹次关键字最近的一层循环。  
     continue;

     break label;//结束指定标识的一层循环结构
     continue leabel;//结束指定标识的一层循环结构当次循环
  }
}

API字典进行查询
获取时分秒的使用方式
System
long start = System.currentTimeMillis();

label:for(int i = 2;i <= 100000;i++){

for(int j = 2;j <= Math.sqrt(i);j++){

  if(i % j == 0){//i被j除尽
       continue label;

}
//能执行到此步骤的,都是质数
count++;
}
//获取当前时间距离1970-01-01 00:00:00 的毫秒数
long end = System.currentTimeMillis();
System.out.println("质数的个数为: " + count);
System.out.println("所花费的时间为: " (end - satrt));//17110 - 优化

class FamilyAccount{
    public static void main(String[] args){
         
        boolean isFlag = true;

        while(){
         
         System.out.println("------------家庭收支记账软件----------------");       
         System.out.println("             1.收支明细                      ");
         System.out.println("             2.登记收入                      ");
         System.out.println("             3.等记指出                      ");
         System.out.println("             4.退    出                      ");
         System.out.println("             请选择(1-4)                     ");
         //获取用户的选择 1-4
         char selecttion = Utility.readMenuSelection();
         switch(selection){
                  
         case '1':
             //System.out.println("1.收支明细");
             System.out.println("------------当前收支明细---------------------");
             System.out.println("details");
             System.out.println("--------------------------------------------");
             break;
         case '2':
             //System.out.println("2.登记收入");
             System.out.println("本次收入金额!");
             int money = Utility.readNumber();
             System.out.println("本次收入说明:");
             String info = Utility.readString();
             //处理balance
             balance += money;
             
             //处理details
             datils += ("收入\t" +  balance + "\t \t" + money + "\t \t" + info + "\t \t");
             break;
         case '3':
             //System.out.println("3.登记支出");
             System.out.println();
             break;
         case '4':
             //System.out.println("4.退  出");
             System.out.println("确认是否退出(Y/N)");
             char isExit = Utility.readConfirmSelection();
             if(isExit == 'Y'){
                isFlag = false;
             }

             break;        
         }
     }
  }
}

如何理解流程控制的练习:
流程控制结构的使用 + 算数逻辑
上面为个人总结笔记,下周会继续更改和更新。

posted on 2025-09-20 17:46  超哥进阶之路  阅读(80)  评论(0)    收藏  举报