当前位置: 首页 > news >正文

Java基础之循环嵌套

循环嵌套

在一个循环内部可以嵌套另一个或多个循环。

外部循环每执行1次,内层循环会执行1轮(全部)。

案例1:

连续3天,每天都要表白5次。

package com.briup.chap03;public class Test03_Nest {public static void main(String[] args) {for(int i = 1; i <= 3; i++) {for(int j = 0; j < 5; j++) {System.out.println("I miss you!");}System.out.println("***************");}}
}

案例2:

​ 输出以下内容,要求每次只能输出一个 '*'

在这里插入图片描述

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

注意:

  • println方法会自动换行
  • print 方法不会自动换行

案例3:

​ 输出以下内容,要求每次只能输出一个 '*'

在这里插入图片描述

public static void main(String[] args) {//line表示要输出的行数int line = 5;//外层循环控制打印的行数for(int i = 1; i <= line; i++){//这个循环控制每行打印的空格for(int j = 0; j < line - i; j++){System.out.print(" ");}//这个循环控制每行打印的*for(int k = 0; k < (2*i-1); k++){System.out.print("*");}//当前行中的空格和*都打印完了,最后输出一个换行System.out.println();}
}

label关键字

​ 代码中出现多层循环嵌套,label标签配合break关键字,可以使程序从内部循环中跳出。

案例描述:

思考:下面案例中break关键字能跳出外层循环吗?

public static void main(String[] args) {for(int i = 0; i < 3; i++) {//外层循环for(int j = 0; j < 5; j++) {//内层循环if(j == 2){break;}}}
}

注意,默认情况下,在嵌套循环中,break和continue只能对当前循环起作用。

如果想让break或continue针对某一个指定的循环起作用,那么可以使用label标签给循环起名字,然后使用break或continue加上label标签名即可。

例如,

package com.briup.chap03;public class Test04_Label {public static void main(String[] args) {//标签名: 循环label1: for(int i = 1; i <= 3; i++) {label2: for(int j = 0; j < 5; j++) {if(j == 2) {//跳出指定的循环// break 标签名break label1;//continue label1;}System.out.println("I miss you!");}System.out.println("***************");}}
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • K8S学习笔记(自用,不定期更新)
  • Docker-命令
  • Tomcat初篇
  • Java 网络编程练习
  • 新天龙八部3江山策仿官方+单机联网+GM工具
  • 【抓包】- Fiddler抓包教程,使用Fiddle抓取B站视频;ffmpeg的使用方法
  • Eureka入门指南:微服务注册与发现的基础概念
  • 软件开发感悟
  • go注册到eureka微服务
  • 构建AI知识库:4大优势+无限可能,共绘在线教育蓝图!
  • 【代码随想录算法训练营第42期 第七天 | LeetCode454.四数相加II、383. 赎金信、15. 三数之和、18. 四数之和】
  • 【Python快速入门和实践012】Python常用脚本-目标检测之查看数据集标签类别及对应数量
  • Python爬虫使用实例
  • 人脸操作:从检测到识别的全景指南
  • 精彩回顾 | 风丘科技亮相2024名古屋汽车工程博览会
  • JavaScript-如何实现克隆(clone)函数
  • [iOS]Core Data浅析一 -- 启用Core Data
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • Angular 响应式表单之下拉框
  • Javascript Math对象和Date对象常用方法详解
  • js 实现textarea输入字数提示
  • Laravel 菜鸟晋级之路
  • magento 货币换算
  • NSTimer学习笔记
  • Phpstorm怎样批量删除空行?
  • PHP变量
  • 从PHP迁移至Golang - 基础篇
  • 第十八天-企业应用架构模式-基本模式
  • 你不可错过的前端面试题(一)
  • 实现简单的正则表达式引擎
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 说说动画卡顿的解决方案
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 通信类
  • 由插件封装引出的一丢丢思考
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • #pragma 指令
  • #Spring-boot高级
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (1)(1.11) SiK Radio v2(一)
  • (a /b)*c的值
  • (C)一些题4
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (Oracle)SQL优化技巧(一):分页查询
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (九)信息融合方式简介
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (转)创业家杂志:UCWEB天使第一步
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • 、写入Shellcode到注册表上线
  • ./configure,make,make install的作用(转)
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .java 9 找不到符号_java找不到符号