#一个33岁新手小白在黑马学习程序员的第四天-1

java基础流程控制语句

for循环语句注意事项

循环 { } 中定义的变量,在每一轮循环结束后,都会从内存中释放:

js 复制代码
public class ForDemo2 {
    /*
        注意事项:
            1. 循环 { } 中定义的变量, 在每一轮循环结束后, 都会从内存中释放
            2. 循环 ( ) 中定义的变量, 在整个循环结束后, 都会从内存中释放
            3. 循环语句 ( ) 和  { } 之间不要写分号
     */
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) {
            int a = 10;
            System.out.println("HelloWorld");
        }
    }
}

循环嵌套

循环嵌套: 在循环语句中, 继续出现循环语句: 内循环对于外循环来说,只是一次循环任务,需要执行完毕,外循环才会开启下一轮 所以执行起来就是,外循环执行一次,内循环执行一圈.

js 复制代码
public static void main(String[] args) {
   
        // 外循环: 控制行数
        for (int i = 1; i <= 5; i++) {
            // 内循环: 控制列数
            for (int j = 1; j <= 10; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
      }
js 复制代码
public static void main(String[] args) {
    for (int i = 1; i <= 5; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print("*");
            }
            System.out.println();
        }

    }

while循环

js 复制代码
while(判断语句){
     整体循环语句
     控制语句
}

执行流程和for循环执行流程一致

  1. 执行初始化语句, 在整个循环期间, 只执行一次
  2. 执行判断条件, 看其返回的结果是true, 还是false false : 循环结束 true : 进入第三步
  3. 执行循环体语句
  4. 执行条件控制语句
  5. 回到2继续
案例:
js 复制代码
 public static void main(String[] args) {
 int i = 1;
        while (i <= 5) {
            System.out.println("HelloWorld");
            i++;
        }
    }
js 复制代码
    public static void main(String[] args) {
        double peakheight = 8848860;
        double paperThickness = 0.1;
        int count = 0;
        int i = 1;
        while (paperThickness < peakheight){
            System.out.println("开始折"+ i + "下");i++ ;
            paperThickness *= 2;
            count++;

        }
        System.out.println("折了多少"+ count +"次就是珠穆朗玛峰高度");
    }
概要:

while和for有什么区别?什么时候用for,什么时候用while?

功能上是完全一样的,for能解决的while也能解决,反之亦然 使用规范:知道循环次数,使用for;不知道循环次数建议使用while

do...while循环

  • 执行流程
  1. 执行初始化语句
  2. 执行循环体语句
  3. 执行条件控制语句
  4. 执行循环条件,看返回结果是true还是false
    1. false : 循环结束
    2. true : 回到2继续

三种循环的区别

  • for循环 和 while(先判断后执行)
  • do。。。while(先执行后判断)

  • 1、for循环和while的执行流程是一模一样的,功能上无区别,for能做得while也能做,反之亦然。
  • 2、使用规范:如果已知循环次数建议使用for循环,如果不清楚要循环多少次建议使用while循环。
  • 3.其他区别:for循环中,控制循环的变量只在循环中使用。while循环中,控制循环的变量在循环后还可以继续使用。

Random生成随机数

Random 和 Scanner 类似,也是 Java 已经写好的类,我们可以使用 Random 产生随机数

js 复制代码
improt java.util.random;  //导包:在JDK中调用随机数生成器

pubiic class Test {
   public static void main (String[]args){
          Random r = new Random(); //调用随机数生成器出来
          
          int num1 = r.nextInt(10); //赋予随机数最大值(随机数最大值不包含数值本身:0~9)
   }
}

案例:

js 复制代码
import java.util.Random;
import java.util.Scanner;

public class Demo006 {
    public static void main(String[] args) {
        System.out.println("这是个猜数字的游戏");
        Random r = new Random();
        Scanner sc = new Scanner(System.in);
        int randomNumber = r.nextInt(100) + 1;
        int randomNumer;
        while (true) {
            System.out.println("请输入一个数字:");
            randomNumer = sc.nextInt();
            if (randomNumer > randomNumber) {
                System.out.println("你输入的数字大了");
            } else if (randomNumer < randomNumber) {
                System.out.println("你输入的数字小了");
            } else if (randomNumer == randomNumber) {
                System.out.println("恭喜你猜对了");
                break;
            }
        }
        System.out.println("随机生成的数字为:" + randomNumer);
    }

 }

break和continue

break :终止 循环体内容的执行,也就是说结束当前的整个循环。

continue :跳过 某次循环体内容的执行,继续下一次的执行。

案例

js 复制代码
     /*
        break: 跳出, 结束循环或switch语句
     */
    public static void main(String[] args) {
        for (int i = 7; i <= 12; i++) {
            if (i == 10) {
                break;
            }
            System.out.println(i + "点正在学习");
        }
    }
js 复制代码
 /*
        continue: 跳过某次循环, 继续下一次循环
 */
    public static void main(String[] args) {
        for (int i = 1; i <= 50; i++) {
            if(i == 3 || i == 11){
                continue;

            }
            System.out.println("老师正在给第" + i + "同学发冰棍儿~~~");
        }
    }
}

需要注意的事项

break :只能在循环、switch 当中进行使用

continue : 只能按照自循环中进行使用

相关推荐
Yyyyyy~2 分钟前
【java】数组的定义和使用
java
麻辣布丁3 分钟前
java集合篇面试模拟
java·开发语言·面试
niucloud-admin4 分钟前
JAVA V6 多商户商城 开发文档——插件开发规范
java·开发语言
嘟哩DuliDuli17 分钟前
创作 Agent 的任务状态该如何保存
android·java·javascript
wdfk_prog30 分钟前
lely-canopen-rtt:为什么推荐在 RT-Thread 上使用 Lely CANopen 构建主站
java·运维·缓存·docker·容器
Token掘金室35 分钟前
JSON模式结构化输出报错
java·服务器·json
秋饼41 分钟前
Spring AI 2.0 接入 DeepSeek V4.1 Flash 生产级实战
java·ai·技术分享·后端开发
IT枫斗者枫哥41 分钟前
Java 分批导出仍然 OOM?用 32 MiB 堆复现三种 CSV 写法
java
shehuiyuelaiyuehao1 小时前
算法43,外观数列,模拟算法+双指针
java·算法
lhldsg1 小时前
多商户团购系统源码:技术架构选型与二次开发实战指南
java·小程序·架构