房上的猫:for循环,跳转语句与循环结构,跳转语句进阶
一.for循环
1.定义:
for循环语句的主要作用是反复执行一段代码,直到满足一定条件为止
2.组成部分:
(1)初始部分:设置循环的初始状态
(2)循环体:重复执行的代码
(3)迭代部分:下一次循环开始前要执行的部分,在while循环结构中它作为循环体的一部分,进行循环次数的累加
(4)循环条件:判断是否继续循环的条件
注:在for循环中,这几个部分是必不可少的,不然循环就会出现错误
3.语法:
for(表达式1;表达式2;表达式3){ //循环体 }
解析:
(1)表达式1:赋值语句
循环结构的初始部分,为循环变量赋初值
(2)表达式2:条件语句
循环结构的循环条件
(3)表达式3:赋值语句,通常用来修改循环变量的值
注:for关键字后面括号中的三个表达式必须用";"隔开
在for循环结构中,表达式1这个初始部分仅仅执行一次
4.for循环结构执行的顺序:
(1)执行初始判断
(2)进行循环条件判断
(3)根据循环条件判断结果
>如果为true,则执行循环体
>如果为false,则退出循环
(4)执行迭代部分,改变循环变量值
(5)依次重复"条件判断-->循环操作-->改变变量值-->条件判断......",直到退出for循环结构
5.for循环解决问题步骤:
(1)分析循环条件和循环操作
(2)套用for语法写出代码
(3)检查循环是否能退出
注:使用for循环结构解决问题时,一定要注意循环是否能退出,即避免"死循环"现象
6.注意(避免死循环):
(1)在for循环结构中每个表达式部分可以写多个表达式,并用","隔开
(2)for循环结构中的表达式1可以省略,但要在for语句前给循环变量赋值
(3)for循环结构中的表达式2可以省略,但要在循环结构中使用break强制跳出循环
(4)for循环结构中的表达式3可以省略,但要在循环结构内改变循环变量值
注:如果三个表达式都省略,则一定会进入死循环
二.双重循环
定义:二重循环就是一个循环体内又包含另一个完整的循环结构的循环
特点:在二重循环中,外层循环变量变化一次,内层循环变量要从初始值到结束值变化一遍
//外面的for循环和单循环一样,外面的for循环一次,里面的for循环跑完一圈 for(int i =0;i<2;i++){ for(int j =0;j<3;j++){ //TODO } }
i=0时,外面的循环1次,然后内部j从0开始,执行3次
然后i++,i=1,再次进入内部循环,j还是从0开始
三.break与continue
1.break语句用于终止某个循环,程序跳转到循环体外的下一条语句
2.continue语句用于跳出本次循环,进入下一次循环的语句
四.跳转语句进阶(contunue和break)
共同点:当continue和break语句在内层循环时,只会影响内层循环的执行,对外层循环没有影响
不同点:执行语句后,程序跳转的位置不同
continue语句是跳出本次循环,进入下一次循环
break语句是跳出本层循环,即提前结束本层循环,执行循环下面的语句
public class Aini { public static void main(String[] args) { System.out.println("循环没有开始"); System.out.println("现在开始测试continue"); for (int i = 0; i < 3; i++) { System.out.println("开始第"+i+"次for循环"); if (i==1) { continue; } System.out.println("看看continue后这里执行了吗?"); } System.out.println("continue测试完毕\n********************************"); System.out.println("现在开始测试break"); for (int i = 0; i < 3; i++) { System.out.println("开始第"+i+"次for循环"); if (i==1) { break; } System.out.println("看看break后这里执行了吗?"); } System.out.println("break测试完毕\n**********************************"); } }
打印结果为:
循环没有开始 现在开始测试continue 开始第0次for循环 看看continue后这里执行了吗? 开始第1次for循环 开始第2次for循环 看看continue后这里执行了吗? continue测试完毕 ******************************** 现在开始测试break 开始第0次for循环 看看break后这里执行了吗? 开始第1次for循环 break测试完毕 **********************************
房上的猫:for循环,跳转语句与循环结构,跳转语句进阶的更多相关文章
- javascript语句——条件语句、循环语句和跳转语句
× 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文 ...
- 04-01 Java switch、for、while、do while语句,循环嵌套,跳转语句break、continue、return
语句 1:switch语句(掌握) (1)格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n ...
- C# 异常语句 跳转语句 while循环 穷举法 迭代法
一 异常语句 ♦ try.....catch....finally 结构形式 try{ 可能会出错的代码语句 如果这里出错了,那么不会在继续下面的代码,而是直接进入catch中处理异常}catc ...
- c#循环语句 for 循环嵌套的练习。还有跳转语句,异常语句,迭代穷举介绍
先说一下循环嵌套:循环嵌套就是再一个循环里面再放一个循环,也就是说如果没一个循环都循环10次,那么第一个循环是1的时候,嵌套的循环会循环十次.也就是10*10的效果. for 循环语句 主要还是逻辑思 ...
- js之语句(条件语句,循环语句,跳转语句)
一.条件语句 1.if语句 条件语句是通过判断指定表达式的值来决定执行还是跳过某些语句,这些语句是代码是“决策点”有时称之为“分支”. if语句是一种基本的控制语句,它让Javascript程序可以选 ...
- 房上的猫:while循环与do-while循环,debug的调试运用
一.循环结构 1.循环不是无休止进行的,满足一定条件的时候循环才会继续,称为"循环条件",循环条件不满足的时候,循环退出 2.循环结构是反复进行相同的或类似的一系列操作,称为&qu ...
- C#语句2——循环语句(for穷举、迭代和while循环)
一.for循环拥有两类: (一).穷举: 把所有可能的情况都走一遍,使用if条件筛选出来满足条件的情况. 1.单位给发了一张150元购物卡,拿着到超市买三类洗化用品.洗发水15元,香皂2元,牙刷5元. ...
- JavaScript、for循环语句知识巩固,while(){}语句以及do{}while()语句以及switch()语句
一.for循环语句练习 关于for循环存在的两个问题类型 穷举:在不知道什么情况下才真的寻要我们的结果,自能让我们一个个走一遍. 迭代:在现有的条件根据规律不断求解,中间情况,最终推测出来的结果 1. ...
- js-条件语句、循环语句
一. 常见条件语句 if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码 if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码 if... ...
随机推荐
- 51Nod 1108 距离之和最小 V2 1096 距离之和最小 中位数性质
1108 距离之和最小 V2基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注三维空间上有N个点, 求一个点使它到这N个点的曼哈顿距离之和最小,输出这个最小 ...
- PAT 1042. Shuffling Machine (20)
1042. Shuffling Machine (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue Shu ...
- Echarts后台封装option对象
该方法返回的keyword指向了前台负责图表显示的jsp页面 public String keyword() { if(this.dateNum == null || this.dateNum.equ ...
- centOS 搭建pipelineDB docs
#下载docs git clone https://github.com/pipelinedb/docs.git #安装python-sphinx &python-dev yum instal ...
- 小白的Python之路 day1 变量
Python之路,Day1 - Python基础1 变量 变量用于存储在计算机程序中引用和操作的信息.它们还提供了一种用描述性名称标记数据的方法,这样我们的程序就能更清晰地被读者和我们自己理解.将变量 ...
- QGIS1.8.0的编译
很早就关注QGIS了,关于它的编译,也尝试了好几次,但都没有成功.在要放弃的时候,再尝试了一回,完全按照他的intall指导.终于成功. 择其要点而言,就是要按部就班,不能偷工减料.想要成功编译,请按 ...
- 深入理解JSP
JSP(Java server page)是Java EE规范最基本成员,他是Java Web开发的重点知识,尽管我们一直在用.但其原理知之甚少.今天重点研究一些JSP核心内容以及其工作原理. JSP ...
- 详解Office Add-in 清单文件
作者:陈希章 发表于2017年12月8日 前言 我们都知道,一个Office Add-in,最主要是由两个部分组成的:清单文件(manifest)和真正要用来执行的网站. 清单文件其实是一个标准的XM ...
- 如何在Gulp中提高Browserify的打包速度
使用Browserify打包js时如果项目变得越来越大,编译时间就会相应变得越来越长.使用官方的插件watchify是个比较有效的提高速度方案. 提速原理 watchify的用法和gulp的watch ...
- 移动浏览器H5页面通过scheme打开本地应用
在移动端浏览器H5页面中,点击按钮打开本地应用主要通过 scheme 协议.本文主要介绍如何在浏览器H5页面中通过 scheme 协议打开本地应用. scheme协议定义 scheme 是一种页面之间 ...