当前课程知识点:Java程序设计 >  第一章 Java语言基础知识 >  1.4-算法的流程控制 >  1.4.1-算法的流程控制

返回《Java程序设计》慕课在线视频课程列表

1.4.1-算法的流程控制在线视频

1.4.1-算法的流程控制

下一节:1.5.1-第一章小结

返回《Java程序设计》慕课在线视频列表

1.4.1-算法的流程控制课程教案、知识点、字幕

大家好 欢迎回来继续学习

Java语言程序设计

那这一节呢

我们来学习算法的流程控制

我们知道略微复杂一点的算法

它不可能总是用顺序语句来构成

肯定会用到选择

循环这样一些结构

那么在java中呢

算法的流程

是由流程控制语句来控制的

包括if语句

switch case语句

for语句while语句

还有do while语句

以及呢这种从循环中跳出

或者终止当前循环的

这样的break语句

还有continue语句

下面呢

我们来学习这些语句的语法细节

首先让我们来看If语句的语法

我们可以有这样几种形式

比如说只有if分支

当这个boolean表达式为真的时候

就执行if分支

为假的时候 什么都不做

或者呢用这种if-else式的结构

当boolean表达式为真的时候

执行if分支里面的内容

否则呢执行else分支里的内容

另外我们还可以用多个else if

相当于多次在else分支里面

再嵌到if else语句

整期的嵌套

这样就是if

然后后面多个else if结构

最后一个else

这样的形式呢

可以实现这种多选择

这些呢

跟我们在C语言中

学过的是一样的

我们就不给出更多的具体例题了

刚才我们介绍了呢

在java里面

我们有条件运算

那现在我们学过

if-else语句以后

我们看看如果说

我们面临的问题是这样

当a大于b

也是if a大于b为真的情况下

我们选出这个

比较大的数是a输出

否则的话

我们选出这个

比较大的数是b输出

如果我们要完成的任务

是这个任务

我们完全可以不用if-else语句

而用条件运算

我们看到用条件运算的话

第一个表达式先计算a大于b

为真还是假

如果为真

那么a为整个表达式的结果

否则呢以b为整个表达式的结果

所以对于简单的if-else语句

来说呢

我们用条件运算去替代它

使得程序更为简洁

switch语句呢

也是进行这种选择的

只不过他的特殊点在于什么呢

特殊点是要根据一个表达式的值

决定接下来走向哪一个分支

所以我也叫它作开关语句

那么这个switch语句

里面的这个表达式

需要是整数类型的

基于整数的类型的

然后我们将这个表达式

与每个case标号进行比较

与哪个标号相符

接下来就从哪一句开始执行

但是执行到什么地方结束呢

switch case 本身并不决定

你走到这一分支以后

执行到哪结束

所以非常重要的一点就是

在每个case分支后面

最后都要有一个break语句

让它结束整个switch case结构

到switch case语句之后的

逻辑上下一条语句去

那么for语句呢

是功能非常强的一个循环语句

用来处理什么样的问题呢

循环语句就是处理

我们用同样的算法

依次处理大批量不同数据的

这样的问题

在java中呢

跟C语言中一样

也是有三种循环语句

那么for语句呢

是这三种循环语句中

功能比较强的

也是实用比较广泛的

一个循环语句

for循环呢

它可以嵌套

也就是说有外层for循环

还可以有内层for循环

那么for循环的语法形式呢

非常简洁

首先呢它的初始表达式

是一般来说

是用来给循环控制变量

或者是其他的初始变量

做初始化用的

然后中间呢

是循环控制条件的判断

当中间这个循环控制条件

判断的表达式为真的时候

循环体得以继续执行

每次执行完循环体以后

就去执行括号中的第三个表达式

一般是用来更新

循环控制条件用的

在java中呢

还提供了一种

叫做增强的for循环

那么是专门用来对数组

或者集合类型的对象进行遍历的

那么它的语法形式呢

我们可以看到

在括号里面

也不写这种初始化 条件判断

或者说(布长)增值

这些都没有了

因为它的作用就是说

将一个数组里面的所有元素

或者我们稍后

在后面要学的

集合类型对象里面的

所有元素从头到尾遍历一遍

那么他就定义一个

引用名在这个地方

然后呢后面给出这个数组对象名

或者说集合类型的对象名

那么这个循环呢

就自动的进行多次

多少次呢

你在里面有多少个对象元素

就是你的集合里面

数组里面

存了多少个元素对象

他就循环多少次

把每一个元素

依次处理一遍

这样的增强for循环呢

在处理集合类型的时候

是非常方便的

那后面当我们学到

集合类型的时候

我们会看到

使用增强for循环

去遍历一个数组

或者集合的这样的具体的实例

在这一章呢

我们就不给出这个实例了

while语句呢

也是一个循环语句

它是每次进入循环体之前呢

要检查括号里面的

这个循环控制表达式

当表达式为真的时候

就进入循环体

执行循环体

什么时候表达式为假了

就退出不执行了

do-while语句呢

跟while语句

有某些相似之处

只是呢他是先进入循环体

至少执行一套循环以后

在循环结束的时候

每次循环结束的时候

去判断while后面括号里面的

这个表达式条件

是不是为真

如果条件为真

会继续执行do后面的循环体

什么时候条件为假了

就退出循环

不执行循环体了

所以它的特点是

循环体至少要执行一次

而刚才看到的while循环呢

如果一开始这个循环控制条件

就为假的话

循环体有可能一次都不执行

break语句呢

我们刚才在switch case语句中

看到了

在每个switch结构的分支的最后

就要加一个break语句

来跳出整个switch case结构

表示我们这个分支执行完了

其他的不必要执行了

我就离开switch case了

除此之外呢在循环中

我们也可以用break

如果循环中出现了break

那么当循环执行到这一句的时候

就直接跳出包围着

他的最内层循环

然后去到这个循环之后的

逻辑上下一个语句开始执行

那么也可以呢用在代码块里面

跳出他指定的这个块

continue语句呢

是用于循环结构中的

它的作用是停止本次循环

停止本次迭代

那是不是彻底离开循环呢

不是

这跟break不一样

它只是停止本次循环

本次循环还有后半截没做完

那怎么办 不做了

直接回到循环的起始处去判断

是否需要开始下一次循环

那么使用形式呢有两种

可以是不带标号的

也可以是带标号的

这一节呢

我们介绍了java的流程控制

介绍了选择结构 if语句

开关语句 switch case语句

循环语句三种 for循环

while循环 do while循环

那么这些呢

跟我们在C语言中学过呢

都基本是一样的

而java里面

在for循环中多了一种

增强性的for循环

这个呢我们在后面学到

集合类型的时候

会给大家看到

怎么样把它用在集合类型上面

Java程序设计课程列表:

第一章 Java语言基础知识

-1.0-导学

--1.0-导学

--JDK的安装与配置01

--JDK的安装与配置02

--JDK的安装与配置03

--编辑并执行第一个java程序01

--编辑并执行第一个java程序02

--编辑并执行第一个java程序03

--eclipse的安装和配置01

--eclipse的安装和配置02

--eclipse的安装和配置03

--使用eclipse进行Java的开发01

--使用eclipse进行Java的开发02

--使用eclipse进行Java的开发03

-1.1-Java与面向对象程序设计简介

--1.1.1 Java与面向对象程序设计简介

--第一章 Java语言基础知识--1.1-Java与面向对象程序设计简介

-1.2-基本数据类型与表达式

--1.2.1-基本数据类型与表达式

-第一章 Java语言基础知识--1.2-基本数据类型与表达式

-1.3-数组

--1.3.1-数组

-第一章 Java语言基础知识--1.3-数组

-1.4-算法的流程控制

--1.4.1-算法的流程控制

--第一章 Java语言基础知识--1.4-算法的流程控制

-1.5-第一章小结

--1.5.1-第一章小结

-第一章编程练习题

-课件

--外部链接

第一章续-习题讲解视频

-Java环境配置、Eclipse使用、Helloworld程序详解

--JAVA的安装和配置

--编写并执行第一个Java程序及Java的跨平台性

--eclipse的安装和配置

--使用eclipse建立Java项目、编写和运行Java程序

--Java注释和Eclipse中的注释操作

--详解HelloWorld程序

-Java数据类型

--Java数据类型介绍

--Java整数类型

--Java浮点类型

--Java字符类型和布尔类型

--数据类型实战

--数据类型转换

--Java强制类型转换精度损失示例与表达式中的数据类型转换

-Java数组

--Java数组介绍、声明与使用

--一维数组的初始化与length属性

--数组索引的原理与使用

--二维数组的介绍与使用

-Java变量

--Java的变量

-命令行参数

--命令行参数的介绍

第二章 类与对象

-2.0-导学

--2.0-导学

-2.1-面向对象方法的特性

--2.1-面向对象方法的特性

--第二章 类与对象--2.1-面向对象方法的特性

-2.2-1-类声明与对象创建

--2.2-1-类声明与对象创建

--第二章 类与对象--2.2-1-类声明与对象创建

-2.2-2-数据成员

--2.2-2-数据成员

--第二章 类与对象--2.2-2-数据成员

-2.2-3-方法成员

--2.2-3-方法成员

--第二章 类与对象--2.2-3-方法成员

-2.2-4-包

--2.2-4-包

--第二章 类与对象--2.2-4-包

-2.2-5-类的访问权限控制

--2.2-5-类的访问权限控制

--第二章 类与对象--2.2-5-类的访问权限控制

-2.3-1-对象初始化

--2.3-1-对象初始化

--第二章 类与对象--2.3-1-对象初始化

-2.3-2-内存回收

--2.3-2-内存回收

--第二章 类与对象--2.3-2-内存回收

-2.4-枚举类

--2.4-枚举类

--第二章 类与对象--2.4-枚举类

-2.5-应用举例

--2.5-应用举例

-2.6-第2章小结

--2.6-第2章小结

-第二章编程练习题

-课件

--第二章课件

第三章 类的重用

-3.0-导学

--3.0-导学

-3.1.1-3.1.2-类继承的概念和语法

--3.1.1-3.1.2-类继承的概念和语法

--第三章 类的重用--3.1.1-3.1.2-类继承的概念和语法

-3.1.3-隐藏和覆盖

--3.1.3-隐藏和覆盖

--第三章 类的重用--3.1.3-隐藏和覆盖

-3.2-Object 类

--3.2-Object 类

--第三章 类的重用--3.2-Object 类

-3.3-终结类与终结方法

--3.3-终结类与终结方法

--第三章 类的重用--3.3-终结类与终结方法

-3.4-抽象类

--3.4-抽象类

--第三章 类的重用--3.4-抽象类

-3.5-泛型

--3.5-泛型

--第三章 类的重用--3.5-泛型

-3.6-类的组合

--3.6-类的组合

-3.7-小结

--3.7-小结

-第三章编程练习题

-课件

--课件

第四章 接口与多态

-4.0-导学

--导学

-4.1-接口

--接口

--第四章 接口与多态--4.1-接口

-4.2.1-4.2.2-类型转换

--类型转换

--第四章 接口与多态--4.2.1-4.2.2-类型转换

-4.2.3-方法的查找

--方法的查找

--第四章 接口与多态--4.2.3-方法的查找

-4.3-多态的概念

--多态的概念

--第四章 接口与多态--4.3-多态的概念

-4.4-多态的应用举例

--多态的应用举例

--第四章 接口与多态--4.4-多态的应用举例

-4.5-构造方法与多态性

--构造方法和多态性

--第四章 接口与多态--4.5-构造方法与多态性

-4.6-本章小结

--本章小结

-第四章编程作业

-课件

--课件

第五章 输入输出

-5.0-导学

--5.0-导学

-5.1.1-5.1.2-异常处理的概念

--5.1.1-5.1.2-异常处理的概念

--第五章 输入输出--5.1.1-5.1.2-异常处理的概念

-5.1.3-5.1.5-异常的处理

--5.1.3-5.1.5-异常的处理

--第五章 输入输出--5.1.3-5.1.5-异常的处理

-5.2-输入输出流的概念

--输入输出流的概念

--第五章 输入输出--5.2-输入输出流的概念

-5.3.1-写文本文件

--写文本文件

--第五章 输入输出--5.3.1-写文本文件

-5.3.2-读文本文件

--读文本文件

--第五章 输入输出--5.3.2-读文本文件

-5.3.3-写二进制文件

--写二进制文件

--第五章 输入输出--5.3.3-写二进制文件

-5.3.4-读二进制文件

--读二进制文件

-5.3.5-File类

--File类

-5.3.6-处理压缩文件

--处理压缩文件

-5.3.7-对象序列化

--对象序列化

-5.3.8-随机文件读写

--随机文件读写

-5.4-本章小结

--本章小结

-课件

--课件

第六章 对象群体的组织

-6.0-导学

--导学

-6.1-Java集合框架介绍

--Java集合框架介绍

--第六章 对象群体的组织--6.1-Java集合框架介绍

-6.2-主要接口及常用的实现类

--6.2-主要接口及常用的实现类

--第六章 对象群体的组织--6.2-主要接口及常用的实现类

-6.3-常用算法

--常用算法

-6.4-数组实用方法

--6.4-数组实用方法

-6.5-基于动态数组的类型(Vector, ArrayList)

--基于动态数组的类型(Vector, ArrayList)

-6.6-遍历Collection

--遍历Collection

-6.7-Map接口及其实现

--Map接口及其实现

-6.8-第6章小结

--第6章小结

-课件

--课件

第七章 图形用户界面

-7.0-导学

--导学

-7.1-绘图

--绘图

-7.2-Swing基础

--Swing基础

-7.3-Swing的层次

--Swing的层次

-7.4-布局管理

--布局管理

-7.5-内部类

--内部类

-7.6-事件处理的基本概念

--事件处理的基本概念

-7.7-事件派发机制

--事件派发机制

-7.8-顶层容器

--7.8-顶层容器

-7.9-中间层容器(一)

--7.9-中间层容器(一)

-7.10-中间层容器(二)

--7.10-中间层容器(二)

-7.11-原子组件(一)

--7.11-原子组件(一)

-7.12-原子组件(二)

--7.12-原子组件(二)

-7.13-原子组件(三)

--7.13-原子组件(三)

-7.14-其它Swing特性

--7.14-其它Swing特性

-7.15-第7章小结

--7.15-第7章小结

-课件

--课件

1.4.1-算法的流程控制笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。