• 逻辑控制2——循环结构


    目录

    1.while 循环

    2.break和continue

    ​编辑

    3.for循环

    4.do while 循环

    1.while 循环

    循环条件为 true, 则执行循环语句; 否则结束循环

    1. //1.打印 1 - 10 的数字
    2. public static void main(String[] args) {
    3. int num = 1;
    4. //while(布尔表达式)
    5. while (num <= 10) {
    6. System.out.println(num);
    7. num++;
    8. }
    9. }
    10. //2.计算 1 - 100 的和
    11. public static void main(String[] args) {
    12. int a = 1;
    13. int sum = 0;
    14. while(a <= 100) {
    15. sum +=a;
    16. a++;
    17. }
    18. System.out.println(sum);//5050
    19. }
    20. /3.计算5的阶层
    21. public static void main(String[] args) {
    22. int a = 1;
    23. int sum = 1;
    24. while(a <=5) {
    25. sum *= a;
    26. a++;
    27. }
    28. System.out.println(sum);//120
    29. }
    30. //4.求阶层和
    31. public static void main(String[] args) {
    32. int i = 1;
    33. int sum = 0;
    34. while(i <= 5) {
    35. int a = 1;
    36. int ret = 1;
    37. while(a <= i) {
    38. ret *= a;
    39. a++;
    40. }
    41. sum += ret;
    42. i++;
    43. }
    44. System.out.println(sum);//153
    45. }

     一些调试技巧:

    2.break和continue

    break 的功能是让循环提前结束。

    continue 的功能是跳过这次循环, 立即进入下次循环;执行到 continue语句的时候, 就会立刻进入下次循环(判定循环条件), 从而不会执行到下方的打印语句.

    1. public static void main(String[] args) {
    2. int a = 1;
    3. while(a <= 10) {
    4. if(a == 2) {
    5. break;//只会打印2,因为a=2时,跳出整个循环
    6. //continue;//会出现死循环,因为无法执行a++,a永远等于2
    7. }
    8. System.out.println(a);
    9. a++;
    10. }
    11. }
    1. public static void main(String[] args) {
    2. //找到1-100内,既能被3整除,也能被5整除的数字
    3. //要求:使用break或者continue当中的任何一个
    4. int i = 1;
    5. while (i <= 100) {
    6. if (i % 15 !=0) {
    7. i++;
    8. continue;
    9. }
    10. System.out.println(i);
    11. i++;
    12. }
    13. }

    3.for循环

    1. 表达式1: 用于初始化循环变量初始值设置,在循环最开始时执行,且只执行一次;
    2. 表达式2: 循环条件,必须为布尔表达式,满则循环继续,否则循环结束;
    3. 表达式3: 循环变量更新方式。

    执行过程:①②③④--->②③④--->②③④--->②③④--->②③④--->②③④--->...--->②为false,循环结束。

    1. //1. 打印 1 - 10 的数字
    2. public static void main(String[] args) {
    3. int i = 1;
    4. for (i = 1; i <= 10; i++) {
    5. System.out.println(i);
    6. }
    7. }
    8. //2. 计算 1! + 2! + 3! + 4! + 5!
    9. public static void main(String[] args) {
    10. int sum = 0;
    11. for (int k = 1; k < 6; k++) {
    12. int ret = 1;
    13. for (int i = 1; i <= k; i++) {
    14. ret *= i;
    15. }
    16. sum += ret;
    17. }
    18. System.out.println(sum);//153
    19. }

    死循环:

    1. public static void main(String[] args) {
    2. for (int i = 0; ; i++) {//没有条件,默认是死循环
    3. System.out.println(i);
    4. }
    5. }

    4.do while 循环

    先执行循环语句, 再判定循环条件,循环条件成立则继续执行,否则循环结束。(while后面的分号不要忘记了)

    1. //打印1-10
    2. public static void main(String[] args) {
    3. int i = 0;
    4. do {
    5. System.out.println(i);
    6. i++;
    7. }while (i <= 10);
    8. }
  • 相关阅读:
    群晖搭建docker系统和办公服务2
    【PyTorch深度学习项目实战100例】—— 基于Pytorch的语音情感识别系统 | 第71例
    3d呈现transfrom-style
    香蕉叶病害数据集
    亚马逊鲲鹏系统全自动化功能有哪些
    PHP火狼大灌篮游戏源码微信+手机wap源码带控制
    前端也学一下 Lua 呀
    【优化调度】基于改进遗传算法的公交车调度排班优化的研究与实现(Matlab代码实现)
    ==和equals的对比
    【Android知识笔记】进程通信(三)
  • 原文地址:https://blog.csdn.net/m0_68071216/article/details/127659081