1.介绍

从本质上讲,程序是一系列指令。控制结构是可以改变我们如何执行这些指令的代码块。
在本教程中,我们将探讨Java中的控制结构。
有三种控制结构:

  • 条件分支,用于在两条或多条路径之间进行选择。Java中有三种类型:if/else/elseif、三元运算符和switch。
  • 循环;用于迭代多个值/对象并重复运行特定代码块的循环。Java中的基本循环类型是for、while和do-while。
  • 分支语句,用于改变循环中的控制流。Java中有两种类型:break和continue。

2.if/else/else if结构

if/else语句是最基本的控制结构,也是众多编程语言的基础。必须熟练掌握。
虽然if可以单独使用,但最常见的使用场景是使用if/else在两个路径之间进行选择:

if (count > 2) {
System.out.println("Count is higher than 2");
} else {
System.out.println("Count is lower or equal than 2");
}

理论上,我们可以无限地链接或嵌套if/else块,但这会损害代码的可读性,所以不建议这样做。

我们将在本文的其余部分探讨其他语句。

3.三元表达式

我们可以使用三元运算符作为替代if/else语句的速记表达式。
重构以后的代码如下:

System.out.println(count > 2 ? "Count is higher than 2" : "Count is lower or equal than 2");

虽然三值化是提高代码可读性的好方法,但它并不总是if/else的好替代品。

4.Switch结构

如果我们有多个条件需要判断,可以使用switch语句。
看一个简单的例子:

int count = 3;
switch (count) {
case 0:
System.out.println("Count is equal to 0");
break;
case 1:
System.out.println("Count is equal to 1");
break;
default:
System.out.println("Count is either negative, or higher than 1");
break;
}

三个或更多if/else语句可能很难阅读。为此,我们可以使用switch,如上所示。
注意,switch有作用域和输入限制,在使用它之前我们需要记住这些限制。

5.循环(Loops)

当我们需要连续多次重复执行相同的代码时使用循环。来看一个for和while循环类型的快速比较:

for (int i = 1; i <= 50; i++) {
methodToRepeat();
} int whileCounter = 1;
while (whileCounter <= 50) {
methodToRepeat();
whileCounter++;
}

上面的两个代码块都将调用methodToRepeat 50次。

6.结束循环(Break)

当需要退出循环时使用break关键字,此时循环体不再执行。
让我们看一个简单的例子:

List<String> names = getNameList();
String name = "John Doe";
int index = 0;
for ( ; index < names.length; index++) {
if (names[index].equals(name)) {
break;
}
}

在这里,在一个名字列表中寻找一个名字,一旦找到它,我们就要停止寻找。

7.直接执行下一循环(Continue)

简单的讲就是:结束当前循环,执行下一循环,不管当前循环下面有何代码都不再执行。

List<String> names = getNameList();
String name = "John Doe";
String list = "";
for (int i = 0; i < names.length; i++) {
// 找到同名的不会再加入到字符串中,继续判断下一个名字
if (names[i].equals(name)) {
continue;
}
list += names[i];
}

在这里,我们跳过在列表中添加重复的名称。正如我们在这里看到的,break和continue在迭代时非常方便,尽管它们通常可以用return语句或其他逻辑重写。

8.本文代码

完整程序代码:Java控制语句

Java控制语句的更多相关文章

  1. Java控制语句——if语句

    Java控制语句分为三大类:①顺序结构:②选择结构:③循环结构. 选择结构又分为:①单选择结构:②双选择结构:③多选择结构. 主要涉及: if_else , switch , while , brea ...

  2. Java开发知识之Java控制语句

    Java开发知识之Java控制语句 一丶复合语句 不管任何语言都有控制语句 if else if else whie do  while  for .... 首先讲解的是java的复合语句 1.什么是 ...

  3. Java 控制语句

    Java 控制语句

  4. Java 控制语句:循环、条件判断

    基础很重要,基础很重要,基础很重要.重要的事情说三遍,. 程序设计中的控制语句主要有三种:顺序.分支和循环.我们每天写的代码,除了业务相关,里面会包含大量的控制语句.但是控制语句的基本使用,是否有些坑 ...

  5. Java控制语句——分支、循环、跳转

    分支语句(if语句,switch语句): 循环语句(for,while,do...while); 跳转语句(break,continue,return): 分支语句(if语句,switch语句) if ...

  6. java 控制语句、数组、方法

    一.控制语句 1.if 语句 if语句是指如果满足某种条件,就进行某种处理. 流程图: 2. if…else语句 语法格式: if (判断条件){ 执行语句1 …… }else{ 执行语句2 …… } ...

  7. java控制语句 if-else while do-while for return break continue goto switch default

    if for //: object/ForEachFloat.java package object; import java.util.Random; public class ForEachFlo ...

  8. Java控制语句例题,for循环语句,if条件语句等,Scanner类与Random类,Math.max()方法

    例题:编写程序,生成5个1至10之间的随机整数,并打印结果到控制台 import java.util.Random;class demo09 { public static void main(Str ...

  9. Java控制语句——break和continue

    在任何循环语句的主体部分,均可用break控制循环的流程. break用于强行退出循环,不执行循环中剩余的语句.(break语句还可用于多支语句switch中) continue 语句用于循环语句体中 ...

  10. Java控制语句——for循环

    for循环语句是支持迭代的一种通用结构,是最有效.最灵活的循环结构. 语法形式: for(初始表达式 ; 布尔表达式 ; 步进){ 循环体 } for循环在执行条件测试后,先执行程序部分,再执行步进. ...

随机推荐

  1. [转帖]Data Types

    https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/Data-Types.html#GUID-A3C0D836-BA ...

  2. [转帖]Linux cache参数调优

    https://zhuanlan.zhihu.com/p/136237953 缓存机制(cache)是保证Linux环境下对硬盘/flash操作效率的有效方式.cache建立在内存中,它缓存了硬盘/f ...

  3. [转帖]编译安装goofys挂载Scaleway免费75G对象存储

    日常•2022年5月29日   goofys编译 goofys是一个开源的使用Go编写的s3存储桶挂载工具,主打高性能.由于使用Go编写,没有用到什么特别的依赖,自己编译也很容易.截止2022.5.2 ...

  4. Python学习之十一_Windows获取硬件信息

    Python学习之十一_Windows获取硬件信息 简介 网上找了一些方法简单整理了下,可以快速获取部分信息 包含机器名称等. 以及序列号相关 部分学习来源: https://blog.51cto.c ...

  5. [转帖]SPEC2006

    安装步骤 # Ubuntu16.04 # 注意安装gFortran . ./install.sh . ./shrc 一般情况下经过以上步骤即可安装完毕,进行使用,注意需要执行shrc设置完环境变量以后 ...

  6. MySQL查询排序和分页

    连接数据库 mysql -hlocalhost -uroot -proot 排序查询语法: select 字段列表 from 表名 order by 字段1 排序方式1, 字段3 排序方式2,字段3 ...

  7. 从嘉手札<2024-1-29>

    补一下以前的几篇日记 2018-4-6 当一个人不在纠结没有什么 而是开始珍视他所拥有的一切的时候 才算得上真正的成熟 个人的意志 不能因受到社会的压力而软弱 也不能受到自然的压力而萎缩 而应当如冬日 ...

  8. ElasticSearch-索引库、文档操作

    1.elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容 2.elasticsearch和lucen ...

  9. iOS 常用命令行工具总结

    平时工作中会经常用到命令行工具Command Lines Tool.而Command Line Tool本质是一个命令行工具包,内部有很多有用的工具,如Apple LLVM compiler.Make ...

  10. Typecho文章采集发布插件-免费下载

    分享一款可以自动采集网页文章,并发布到typecho博客网站的typecho采集发布插件,支持简数采集器,火车头数据采集器,八爪鱼文章采集器,后羿采集器等. Typecho采集发布插件使用方法如下: ...