Javase day04

本文深入讲解了三种循环语句:while循环、do-while循环和for循环,详细解析了循环体、迭代、无限循环等概念,并通过实例展示了如何使用break和continue关键字控制循环流程。

第四章 循环语句

4.1 while循环

while语句

 while(循环继续条件){
 //循环体
 语句(组);
 }

循环条件总是放在圆括号内。只有当循环体只包含一条语句或不包含语句时,循环体的花括号才可以省略。

在这里插入图片描述
代码如下:

 public static void main(String[] args){
                 //1.生成随机数
                 int number=(int)(Math.random()*101);
                 System.out.println("Guess a magic number between 0 and 100:");
                 Scannaer scanner=new Scanner(System.in);
                 //获取用户输入的值
                 //循环初始化
                 System.out.print("Enter you guess:");
                 int num=scanner.nextInt();
                 while(num!=number){//循环条件
                 if(num<number){
                                      System.out.println("too low!");
                 }else{
                                      System.out.println("too hight");
                 }
                 System.out.print("Enter you guess:");
                 int num=scanner.nextInt();
    }
   System.out.println("Yes the number is "+number);
 }

4.2 do-while循环

  • do-while语句

    do {
    //循环体;
    语句(组);
    } while (循环继续条件);

4.3 for循环

  • for语句

     for(初始操作;循环继续条件;每次迭代后的操作){
        //循环体
               语句(组);
        }
    
  • for嵌套语句

示例:预测未来学费
假设某个大学今年的学费是10000美元,而且以每年7%的速度增加。多少年后学费会翻倍?
代码:

public static void main(String[] args){
            double tuition=10000;// year=0
            int year=0;
            while(tuituion<20000){
               tuiution=tuition*1.07;
               year++;
             }
            System.out.print("Tuition will be double in "+year+"  year");
  }

在这里插入图片描述
代码:

public static void main(String[] args){
   Scanner scanner=new Scanner(System.in);
   //提示用户输入一个十进制数
   System.out.print("Enter a decimal number: ");
   int number=input.next.Int();
   String hex=" ";
   while(number !=0){
       int hexValue=number%16;
       char hexDidit=(hexValue<=9&&hexValue>=0)?(char)(hexValue+'0'):(char)(hexValue-10+'A');
       hex=hexDight+hex;
       number=number/16;
    }
    System.out.println("The hex number is  "+hex);
}

4.4 嵌套循环

* 示例:打印直角三角形
代码:

     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();
      	}
     }

* 示例:打印菱形
代码:

   

     public static void main(String[] args){
             for(int i=1;i<=7;i++){
              		for(int j=1;j<=1-i;j++){
              			System.out.print("");
              		}
              		for(int j=8-i;j>=1;j--){
              			System.out.print("*");
              	    }
              		System.out.println();
              	}
           }

* 示例:打印空心菱形
代码:

       
    
     public static void main(String[] args) {
        		for(int i=1;i<=9;i++){
        			for(int k=1;k<=Math.abs(i-5);k++){
        				System.out.print(" ");
        			}
        			for(int j=1;j<=i&&(i+j)<=10;j++){
        				if(j==1||j==i||j+i==10){
        					System.out.print("* ");
        				}else{
        					System.out.print("  ");
        				}
        			}
            			System.out.println();
            		}
            	}

4.5 break和在这里插入代码片continue

  • break语句
    跳出整个循环

  • continue语句
    跳出循环当前迭代
    continue语句总是在一个循环内。在while和do-while循环中,continue语句之后马上计算循环继续条件;而在for循环中,continue语句之后会立即先执行每次迭代后的动作,再计算循环继续条件。

  • 示例:显示素数
    分五行显示前50个素数,每行包括10个数字。
    代码:

    public static void main(String[] args){
        	int count=0;//计算素数的个数
        	int number=1;
        	while(count<=50){//计算素数
        		boolean flag=true;
        		for(int i=2;i<=number/2;i++){
        			if(number%i==0){
        				flag=false;
        				break;
        			}
        		}
        		if(flag){
        			count++;
        			System.out.print(number+" ");
        			if(count%10==0){
        				System.out.println();
        			
        			}
        		}
        		number++;
       }
    

4.6 函数的重载

在同一类中 如有同名函数 则称之为函数之间为重载关系
重载的前提是 函数重名
与 修饰符 返回值类型 参数列表没有关系
仅仅和参数列表中 参数类型的排列组合有关系

本章小结

1、循环语句有三类:while循环、do-while循环和for循环。
2、循环中包含重复执行的语句的部分称为循环体。
3、循环体执行一次称为循环的一次迭代。
4、无限循环是指循环语句被无限执行。
5、在设计循环时,既需要考虑循环控制结构,还需要考虑循环体。
6、while循环首先检查循环继续条件。如果条件为true,则执行循环;如果条件为false,则循环结束。
7、do-while循环与while循环类似,只是do-while循环先执行循环体;然后再检查循环继续条件,以确定是继续还是终止。
8、while和do-while循环常用于循环次数不确定的情况。
9、标记值是一个特殊的值,用来标记循环的结束。
10、for循环一般用在循环体执行次数固定的情况。
11、for循环控制由三部分组成。第一部分是初始操作,通常用于初始化控制变量。第二部分是循环继续条件,决定是否执行循环体。第三部分是每次迭代后执行的造作,经常用于调整控制变量。通常,在控制结构中初始化和修改循环控制变量。
12、while循环和for循环都称为前测循环(pretest loop),因为在循环体执行之前,要检测一下循环继续条件。
13、do-while循环称为后侧循环(postteat loop),因为在循环体执行之后,要检测一下这个条件。
14、在循环中可以使用break和continue这两个关键字。
15、在关键字break立即终止包含break的最内层循环。
16、关键字continue只是终止当前迭代。

豌豆代理(又称豌豆 IP)是一款一站式国内代理 IP 服务平台,主打高匿名、低延迟、高可用的 IP 资源,支持 HTTP/HTTPS/SOCKS5 协议,适配 Windows、Mac、Android、iOS 多平台。 多类型 IP 资源与高覆盖节点 提供动态住宅 IP、静态独享 IP、数据中心 IP,覆盖全国 200 + 城市,可用率 99%+;支持省市精准选择或全国混拨,适配不同业务合规与稳定性需求。 使用:在客户端 “节点 / 线路” 页,按城市 / 类型筛选,一键连接目标 IP,适合爬虫、电商多账号运营等场景。 秒级 IP 切换与灵活调度 支持手动一键切换、秒级动态切换(切换速度低至 100ms)、定时切换(自定义时长),并自动过滤重复 IP,避免重复使用导致风险。 使用:在 “设置” 中开启 “自动切换” 并设时间间隔,或按 Ctrl+Q 快捷键一键换 IP,适配反爬虫、批量测试等高频切换场景。 全协议支持与多端适配 兼容 HTTP/HTTPS/SOCKS5 主流代理协议,可对接浏览器、爬虫脚本、客户端软件;支持 Windows、Mac、安卓、iOS 多端同步使用,跨设备无缝切换。 使用:在客户端 “协议设置” 选择对应协议,生成代理地址与端口,直接填入目标软件即可生效。 隐私安全与数据加密 自研传输加密技术保护数据传输,搭配高匿名 IP 隐藏真实地址,同时支持自动清除 Cookie / 缓存,降低隐私泄露与追踪风险。 使用:在 “安全设置” 中开启 “数据加密” 与 “自动清理缓存”,公共 WiFi 环境下优先启用,提升隐私防护等级。 智能筛选与稳定网络优化 系统自动筛选低延迟、高可用 IP,过滤失效 / 重复地址;依托自建纯净机房与独享带宽,搭配 BGP 多线接入,保障连接稳定性与速度。 使用:无需手动配置,客户端默认智能匹配合适节点,复杂网络环境可在 “网络
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值