四、控制执行流程

1.true和false

  所有条件语句都利用条件表达式的真或假来决定执行路径。注意Java不允许我们将一个数字作为布尔值使用。

2.if-else

3.迭代

  while、do-whilefor来控制循环,有时会将它们划分为迭代语句。语句会重复执行,直到起控制作用的布尔表达式得到“假”的结果为止。

4.Foreach语法

  Java SE5引入了一种新的简洁的for语法用于数组和容器,表示不必创建int变量去对由访问项构成的序列进行记数,foreach将自动生成每一项。

  foreach还可以用于任何Iterable对象。

5.return   return关键词有两个方面的用途:一方面指定一个方法返回什么值,另一方面它会导致当前的方法退出,并返回那个值。

6.break和continue   break用于强行退出循环,不执行循环中剩余的语句。而continue则停止当前执行的迭代,然后退回循环起始处,开始下一次迭代。

7.臭名昭著的goto   尽管goto仍是Java中的一个保留字,但在语言中并未使用它:Java没有goto。然而,Java也能完成一些类似于跳转的操作,这与break和continue这两个关键词有关。

  标签是后面跟有冒号的标识符,就像这样: labell: 。在Java中,标签起作用的唯一的地方是在迭代语句之前。表明“刚好之前”的意思,在标签和迭代中置入任何语句都不好。而在迭代之前设置标签的唯一理由是:我们希望在其中嵌套另一个迭代或者一个开关(switch)。这是由于break和continue关键词通常只中断当前循环,但随同标签一起使用,它们就会中断循环,直到标签所在的地方:

labell:
outer-iteration {
inner-iteration {
//...
break; // (1)
//...
continue; // (2)
//...
continue labell; // (3)
//...
break labell; // (4)
}
}

  在(1)中,break中断内部迭代,回到外部迭代。在(2)中,continue使执行点移回内部迭代的起始处。在(3)中,continue labell同时中断内部迭代以及外部迭代。在(4)中,break labell也会中断所有迭代,并返回labell处,但并不重新进入迭代。也就是说,它实际是中止了两个迭代。

  ①一般的continue会退会最内层循环的开头,并继续执行。

  ②带标签的continue会到达标签的位置,并重新进入紧接在那个标签后面的循环。

  ③一般的break会中断并跳出当前循环

  ④带标签的break会中断并跳出标签所指的循环。

  要记住的重点是:在Java里需要使用标签的唯一理由就是因为有循环嵌套存在,而且想从多层嵌套中break或continue。

8.switch

  switch有时也被规划为一种选择语句。根据整数表达式的值,switch语句可以从一系列代码中选出一段去执行。

  switch语句是实现多路选择的一种干净利落的方法。但它要求使用一个选择因子,并且必须是intchar那样的整数值。

  enum可以和switch协调工作。

9.总结

  本章介绍的都是一些基础的常见知识,根据本人需求进行了适当删减,以达到学习记录的目的。标签的使用需要谨慎,以代码清晰优先。

该片讲述的是让·雷诺扮演的杀手Ruby为了被仇人杀害的情人,而走上了复仇之路。期间他遇见了有着善良的热心肠并且还有点愚蠢的Quentin,二人发生了让人啼笑皆非的一段段法式喜剧

Java编程思想 学习笔记4的更多相关文章

  1. [Java编程思想-学习笔记]第3章 操作符

    3.1  更简单的打印语句 学习编程语言的通许遇到的第一个程序无非打印"Hello, world"了,然而在Java中要写成 System.out.println("He ...

  2. Java编程思想 学习笔记1

    一.对象导论 1.抽象过程 Alan Kay曾经总结了第一个成功的面向对象语言.同时也是Java所基于的语言之一的Smalltalk的五个基本特性,这些特性表现了纯粹的面向对象程序设计方式 1)万物皆 ...

  3. [Java编程思想-学习笔记]第1章 对象导论

    1.1  抽象过程 Java是一门面向对象的语言,它的一个优点在于只针对待解问题抽象,而不用为具体的计算机结构而烦心,这使得Java有完美的移植性,也即Java的口号"Write Once, ...

  4. Java编程思想 学习笔记11

    十一.持有对象  通常,程序总是根据运行时才知道的某些条件去创建新对象.在此之前,不会知道所需对象的数量,甚至不知道确切的类型. Java实用库还提供了一套相当完整的容器类来解决这个问题,其中基本的类 ...

  5. Java编程思想学习笔记——类型信息

    前言 运行时类型信息(RTTI:Runtime Type Information)使得我们可以在程序运行时发现和使用类型信息. Java在运行时识别对象和类的信息的方式: (1)一种是RTTI,它假定 ...

  6. Java编程思想 学习笔记12

    十二.通过异常处理错误  Java的基本理念是“结构不佳的代码不能运行”. Java中的异常处理的目的在于通过使用少于目前数量的代码来简化大型.可靠的程序的生成,并且通过这种方式可以使你更加自信:你的 ...

  7. Java编程思想 学习笔记10

    十.内部类  可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一种非常有用的特性,因为它允许你把一些逻辑相关的类组织在一起,并控制位于内部的类的可视性.然而必须要了解,内部类和组合是 ...

  8. Java编程思想 学习笔记7

    七.复用类 1.组合语法 在新的类中产生现有类的对象.由于新的类是由现有类的对象所组成,所以这种方法叫做组合. 类中域为基本类型时能够自动被初始化为零.对象引用被初始化为null. 编译器不是简单地为 ...

  9. Java编程思想 学习笔记5

    五.初始化与清理 1.用构造器确保初始化  在Java中,通过提供构造器,类的设计者可确保每个对象都会得到初始化.创建对象时,如果其类具有构造器,Java就会在用户有能力操作对象之前自动调用相应的构造 ...

随机推荐

  1. PAT 1013 数素数

    https://pintia.cn/problem-sets/994805260223102976/problems/994805309963354112 令P~i~表示第i个素数.现任给两个正整数M ...

  2. [日常工作]Win2008r2 以及更高版本的操作系统安装Oracle10.2.0.5

    1. 当时有特殊需求, 客户有win2008r2sp1以上的windows系统,但是数据库要使用Oracle10.2.0.5 的版本. 问题: 1. Oracle10 最高支持到 Win2008sp2 ...

  3. Ionic3.x设置启动页与图标

    由于手机有很多不同的尺寸与版本,所以图标尺寸也是大小不一,但是如果手动每一个尺寸都制作一个图标,那估计美工会吐血吧,不过幸好,ionic只需要一个图标就可以制作不同尺寸的图标. 添加一个ionic项目 ...

  4. pandas文件写入读取操作

    #encoding:utf8 import pandas as pd import numpy as np from pylab import * df=pd.read_csv("./pat ...

  5. 一步步分析为什么B+树适合作为索引的结构

    在MySQL中,主要有四种类型的索引,分别为:B-Tree索引,Hash索引,Fulltext索引和R-Tree索引,本文讲的是B-Tree索引. 什么是索引 索引(Index)是帮助数据库高效获取数 ...

  6. 微信小程序开发4之form表单与弹出层

    第一 表单的提交和重置 第二 radio组件 第三 checkbox组件 第四 loading组件 第五 toast组件 第六 modal组件

  7. 【Spring】—— 自动装配

    一.Spring中装配bean的方式 1.在XML中显式配置 2.在Java中进行显式配置 3.隐士的bean发现机制和自动装配 二.自动装配示例 1.在需要装配到其他bean中的类中加入@Compo ...

  8. jquery 加載

    load(url,data,callback)從遠程服務器加載數據,并放入到被選中元素上: url是必須有的,希望加載的url: data是可選的,表示和請求一起發送的鍵值對數據: callback是 ...

  9. 如何修改可运行Jar包,如何反编译Jar包

    将可运行Jar包,反编译成项目,修改代码,再次编译,打包. 需要工具:jd-gui.myeclipse 具体步骤: 1.使用jd-gui打开原始的Jar包,选择File-->Save All  ...

  10. 学习Spring Boot:(二十一)使用 EhCache 实现数据缓存

    前言 当多次查询数据库影响到系统性能的时候,可以考虑使用缓存,来解决数据访问新能的问题. SpringBoot 已经为我们提供了自动配置多个 CacheManager 的实现,只要去实现使用它就可以了 ...