Java中的循环结构(二)
循环结构(二)
学习本章有道的单词:
rate:速度,比率
young:年轻的,年少
schedule:时间表,调度
neggtive:消极的;否定
customer:顾客,观众
birthday:生日
point:点.指向,分点数
continue:继续,延生,持续
return:返回,归还
for:为了,因为:为了,对于
for循环
语法:
for(表达式1;表达式2;表达式3){
//循环体
}
表达式1:赋值语句>循环结构的初始部分,为循环变量赋初值,eg:int i =0
表达式2:条件语句>循环结构的循环条件,eg:i<100
表达式3赋值语句,通常使用++或--运算符>循环结构的迭代部分,通常用来修改循环变量的值eg:++
for关键字后面括号中的三个表达式必须用分号隔开.for循环中的这三个部分及{}中的循环体使循环结构必需的四个组成部分完美地结合在了一起,非常简明
for循环结构执行的顺序:
(1)执行初始部分(int i = 0;).
(2)进行循环条件判断(i<100)
(3)根据循环条件判断结果.如果为true,则执行循环体;如果为false,则退出循环,步骤(4),(5)均不执行.
(4)执行迭代部分,改变循环变量值(i++).
(5)依次重复步骤(2)~步骤(4),直到退出for循环结构.
表达式1这个初始部分仅仅执行了一次.
注意!
for循环结构有三个表达式,在语法上,这三个表达式都可以省略,但表达式后面的分号不能省略.如果省略了表达式,要注意保证循环能够正常运行.
首先给出一个表达式:
for(int i =0; i< 10;i++);
>省略表达式1:
for(; i< 10;i++);
如果出现"表达式1"省略的情况,则需要在for语句前给循环变量赋值,因此可将上面的语句修改为:
int i = 0;
for(; i< 10;i++);
>省略表达式2:
for(int i =0; ;i++);
如果出现"表达式2"省略的情况,会出现"死循环"的情况,一种方法是添加表达式2,一种是在循环体中使用break强制跳出循环结构.关于break语句的用法,将在后面介绍.
>省略表达式3:
for(int i =0; i< 10;);
如果出现"表达式3"省略的情况,,变量的值始终是0,因此循环条件永远成立,程序也会出现死循环.那我们可以在循环体中添加i++;
for(int i =0; i< 10;){
i++;
}
在实际开发中,为了提高代码的可读性,尽量不要省略各个表达式.如果需要省略,可以考虑是否改用while或do-while结构.
跳转语句
Java支持三种形式的跳转:break,continue和return.return在后面讲.
break语句:
break语句在前面章节中switch语句中有使用,break语句用于终止某个循环,使程序跳到循环体外的下一条语句.在循环中位于break后的语句将不再执行,循环也停止执行.
break语句不仅可以用在for循环结构中,也可以用在while和do-while循环结构中,break语句通常与if条件语句一起使用.
continue语句:
continue语句可以用于for循环结构,也可以用于while和do-while循环结构.在for循环结构中,continue语句使程序先跳转到迭代部分,然后判断循环条件.如果为true,则继续下一次循环;否则终止循环.在while循环结构中,continue语句执行完毕后,程序将直接判断循环条件.continue语句只能用在循环结构中.
对比两个结构:
>break语句用于终止某个循环,程序跳转到循环体外的下一条语句.
>continue语句用于跳出本次循环,进入下一次循环的语句.
循环结构总结
三种循环结构:
while,do-while和for循环结构.
三种循环结构都有四个必不可少的部分:初始部分,循环条件,循环体,迭代部分,缺少了任何一个都可能造成严重错误.
对比>语法不同
while循环语句:
while(<条件>){
//循环体
}
do-while循环语句:
do{
//循环体
}while(<条件>);
for循环语句:
for(初始化;条件;迭代) {
//循环体
}
执行顺序不同
>while循环结构:先进行条件判断,在执行循环体.如果条件不成立,退出循环.
>do-while循环结构:先执行循环体,在进行条件判断,循环体至少执行一次.
>for循环结构:先执行初始化部分,再进行条件判断,然后执行循环体,最后进行迭代部分的计算.如果条件不成立,跳出循环.
适用情况不同
>对于循环次数确定的情况下,通常选用for循环结构;对于循环次数不确定的情况,通常选用while和do-while循环结构.
Java中的循环结构(二)的更多相关文章
- Java中的循环结构
1.while循环结构 语法: while(循环条件){ //循环操作 } while循环结构流程图: 举例: int i = 1; while(i <= 100){ System.out.pr ...
- Java中的循环结构进阶
循环结构进阶 学习本章用到的单词 triangle:三角形 circle:圆形 diamond:钻石 password:密码 row:行.排列 二重循环结构 简单的说:二重循环就是一个循环体内又包含另 ...
- java中for循环的6种写法
有些写法上的说明写的过于武断,可能有很多不当之处,仅供参考. package ForLoop; import java.util.ArrayList; import java.util.Itera ...
- Java初认识--Java中的语法结构
Java中的语法结构(程序流程控制) Java的语法结构有四种: 1.顺序结构. 顺序结构很简单,就是按顺序执行,输出就可以了. 2.判断结构. 判断结构的一个代表性的语句是if:if语句有三种格式体 ...
- Java开发知识之Java中的Map结构
Java开发知识之Java中的Map结构 一丶Map接口 Map没有实现Collection接口,提供的是Key 到Value的映射. Map中.不能包含相同的Key,每个Key只能映射一个Value ...
- Java中JVM内存结构
Java中JVM内存结构 线程共享区 方法区: 又名静态成员区域,包含整个程序的 class.static 成员等,类本身的字节码是静态的:它会被所有的线程共享和是全区级别的: 属于共享内存区域,存储 ...
- Java中的集合(十二) 实现Map接口的WeakHashMap
Java中的集合(十二) 实现Map接口的WeakHashMap 一.WeakHashMap简介 WeakHashMap和HashMap一样,WeakHashMap也是一个哈希表,存储的也是键值对(k ...
- Java中的集合(二)单列集合顶层接口------Collection接口
Java中的集合(二)单列集合顶层接口------Collection接口 Collection是一个高度封装的集合接口,继承自Iterable接口,它提供了所有集合要实现的默认方法.由于Iterab ...
- JAVA中生成、解析二维码图片的方法
JAVA中生成.解析二维码的方法并不复杂,使用google的zxing包就可以实现.下面的方法包含了生成二维码.在中间附加logo.添加文字功能,并有解析二维码的方法. 一.下载zxing的架包,并导 ...
随机推荐
- Flask搭建弹幕视频网站(1)
说在前面 也不知道最后能不能完成网站,所以就想把这十多天来学习到的点点滴滴记录下来.学的越来越多,所谓全栈也是需要前端基础,越来越感受到压力,但是遇到一个问题就解决一个问题,慢慢习惯之后感觉也还行.说 ...
- [noi239]count
将每一个ai表示为$ai=ki\cdot m+ri$,即满足$m\sum ki+\sum ri=n$且$0<ri<m$枚举$S=\sum ri$(S范围是$k\le S\le k(m-1) ...
- opencv 视频处理相关
包含视频格式知识(编解码和封装格式):如何获取视频信息及视频编解码格式:opencv读取及保存视频,及opencv fourcc编码格式 一.基础知识 视频的编解码格式和封装格式 参考如山似水 视频编 ...
- PaintHouse II
// // Created by Administrator on 2021/7/27. // #ifndef C__TEST01_PAINTHOUSE_HPP #define C__TEST01_P ...
- Java安全之Axis漏洞分析
Java安全之Axis漏洞分析 0x00 前言 看到个别代码常出现里面有一些Axis组件,没去仔细研究过该漏洞.研究记录一下. 0x01 漏洞复现 漏洞版本:axis=<1.4 Axis1.4 ...
- 【Linux】(1)安装
VMware虚拟机安装Linux,IP地址显示为127.0.0.1的解决方案 ① 打开该虚拟机,点击导航栏"虚拟机(M)",选择"设置(S)..." ② 将&q ...
- Error occurred during initialization of VM Could not reserve enough space fo
通过es的elasticsearch.bat 启动.发现错误:Error occurred during initialization of VM Could not reserve enough s ...
- javascript-初级-day04js数据类型
day01-js数据类型 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type& ...
- jenkins cron
1. Jenkins cron syntax Jenkins Cron 语法遵循Cron实用程序的语法(略有不同)具体来说,每行包含由TAB或SPACE分隔的5个字段(分时日月周): 分钟(Minut ...
- 查找 Search
如果值域小一点. 那么我们有一个很精妙的做法. 分块完维护数字\(cnt\),和一个\(bitset\)信息. 然而小不得. 那么我们考虑维护后缀\(nxt_i\),表示第\(i\)位后,最近的\(a ...