2019独角兽企业重金招聘Python工程师标准>>>

Java并不支持goto语句,但是依旧可以有限制的完成类似的跳转。

true 和 false

Java不允许我们将一个数字作为boolean值使用。

if-else

if(boolean-exp1){//exp1 ture
}else if(boolean-exp2){//exp1 false & exp2 ture
}else{//exp1 false & exp2 false
}

迭代

while(boolean-exp){//exp ture statement
}
do {//statement
}while(boolean-exp);
for(initialization;boolean-exp;step){//exp ture statement
}

Foreach语法

for(ATypeName x : a iterable object of the type){//statement
}

foreach语法是一种简炼的for循环,用于遍历某一个对象,这个对象必须是Iterable的,例如数组,List等等;

float[] f = new float[10];
for(float x : f){System.out.println(f);
}

return

return关键字有两方面的用途:

  • 指定一个方法返回什么值
  • 导致当前方法退出,并返回那个值

break、continue 和 goto

  • break:强行退出循环,不执行循环中剩余的语句;
  • continue:停止执行当前的迭代,然后退回循环起始点开始下一次迭代;
  • goto:goto 依旧是Java的一个保留字,但是 Java 并没有goto;

标签lable:

break和continue通常只中断当前的循环,但是如果随标签一起使用,他们就会中断循环直到标签所在的地方,例如:

int i = 0;
int j = 0;
lable:
for(j = 0;j < 2;j++){System.out.println("outer loop " + j);for(i = 0;i < 2;i++){break;}
}
System.out.println(i);

结果为:

outer loop 0
outer loop 1
0
int i = 0;
int j = 0;
lable:
for(j = 0;j < 2;j++){System.out.println("outer loop " + j);for(i = 0;i < 2;i++){break lable;}
}
System.out.println(i);

结果为:

outer loop 0
0

我们发现带标签的break会中断并跳出标签所指的循环。

int i = 0;
int j = 0;
lable:
for(j = 0;j < 2;j++){System.out.println("outer loop " + j);for(i = 0;i < 2;i++){continue;}
}
System.out.println(i);

结果为:

outer loop 0
outer loop 1
2
int i = 0;
int j = 0;
lable:
for(j = 0;j < 2;j++){System.out.println("outer loop " + j);for(i = 0;i < 2;i++){continue lable;}
}
System.out.println(i);

结果为:

outer loop 0
outer loop 0
outer loop 0
......

带标签的continue会到达标签的位置,并重新进入标签所指的那个循环。

switch

switch(integer-selector){case integer-value1:statement;break;case integer-value2:statement;break;......default:statement;break;
}

转载于:https://my.oschina.net/firmament/blog/761933

Thinking In Java 第四章 控制执行流程相关推荐

  1. Thinking in JAVA笔记——第三章 操作符 第四章控制执行流程

    3.1更简短的打印语句 import static一个包 3.2Java操作符:与c++类似 3.3优先级 java有优先级,如果忘记优先级规则,应该加括号已明确. 3.4赋值 基本类型的赋值就是赋值 ...

  2. java学习笔记 java编程思想 第4章 控制执行流程

    目录 4.1 true和false 4.2 if-else 4.3 迭代 4.3.1 do-while 4.3.2 for 练习1 练习2 练习3 练习4 练习5 4.3.3 逗号操作符 4.4 Fo ...

  3. 第4章 控制执行流程

    1.逗号操作符(不是逗号分隔符),唯一使用到的地方是for循环的控制表达式.可初始化多个变量,但是它们必须有相同的类型. // 逗号操作符的使用: for (int i = 0, j = i; i & ...

  4. 酷java_考试酷java 第四章.doc

    考试酷java 第四章 第四章 1. 关于内部类,下列说法不正确的是( ). 内部类不能有自己的成员方法和成员变量 2. 有一个类B,下面为其构造方法的声明,正确的是(? ). B(int x) {} ...

  5. 尚学堂Java第四章作业编码题+个人想法

    尚学堂Java第四章作业编码题+个人想法 编码题一: 编码题二: 编码题三: 终于到我想说的地方了 刚开始学习Java,刚开始学会做笔记,觉悟的可能比较晚,但没关系,我会努力的! 由于每次做作业都难理 ...

  6. {Django基础九之中间件} 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证...

    Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学会了 ...

  7. Java SpringMVC三层架构及执行流程

    一.SpringMVC三层架构 Java SpringMVC的工程结构一般来说分为三层,自下而上是Modle层(模型,数据访问层).Cotroller层(控制,逻辑控制层).View层(视图,页面显示 ...

  8. 可视化导论 - 第四章 数据可视化流程 - 学习笔记

    第4章 数据可视化流程 4.1 数据可视化流程 以数据流向为主线,其主要模块包括数据采集.数据处理和变换.可视化映射和用户感知. 4.2 数据处理和数据变换 4.2.1 数据滤波 数据滤波器在信号处理 ...

  9. Java线程池参数、执行流程及线程数配置建议

    1. 线程池参数详解 corePoolSize:线程池中常驻核心线程数: maximumPoolSize:线程池能够容纳同时执行的最大线程数: keepAliveTime:多余的空闲线程存活时间: u ...

最新文章

  1. 这家中国芯片公司年利润追上英伟达了?假的
  2. T-PAMI 2021 | 换个损失函数就能实现数据扩增?
  3. 77.redis介绍 安装 持久化 数据类型
  4. 基于Confluent.Kafka实现的KafkaConsumer消费者类和KafkaProducer消息生产者类型
  5. js mysql 住宿系统_[源码和文档分享]基于JavaScript和MySQL实现的酒店管理系统
  6. Java IO篇:序列化与反序列化
  7. python seach_python 正则re.search
  8. ASP.NET Core 1.1 简介
  9. deprecated_使用Java的@Deprecated前瞻
  10. 【ffmpeg for wince】音视频编解码多平台移植(for window/wince))ffmpeg
  11. ceph升级到10.2.3 版本启动服务报错:Unknown lvalue 'TasksMax' in section 'Service'
  12. 及时复盘的好处_还不会复盘?这篇有最全的复盘介绍
  13. SU Demos-03T-F Analysis-01Sugabor
  14. ArrayList源码剖析
  15. 谱尼测试凭借现代化的测试平台
  16. 华为od机试81出租车计费python
  17. codewars练习js2021/5/67891026
  18. Pycharm报错:FutureWarning: `distplot` is a deprecated function and will be removed in a future version
  19. 保姆级教程:python读取并绘制nc数据
  20. 源码必须会丨一个bug的解决过程,让你明白阅读源码的重要性!

热门文章

  1. Ureport2源码修改
  2. Idea左侧显示目录结构和.java文件的解决办法
  3. TensorFlow: Could not load requested Qt binding.
  4. CNN结构:用于检测的CNN结构进化-结合式方法
  5. 国外AI界牛人主页 及资源链接
  6. asp.net mvc+httpclient+asp.net mvc api入门篇
  7. 关于js 中call()和 apply()方法的解释
  8. thinkphp5 composer
  9. 【爬虫系列之一】爬虫开发环境的搭建
  10. 记录node内存瓶颈分析