ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java流程控制

2022-03-10 14:00:54  阅读:179  来源: 互联网

标签:语句 控制 Java 流程 break case while 循环 statement


Scanner对象

  • 可以通过Scanner类来获取用户的输入
  • 基本语法:
Scanner s = new Scanner(System,in);
  • 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()方法判断是否还有输入的数据
  • next():
  1. 一定要读取到有效字符后才可以结束输入。
  2. 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
  3. 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
  4. next()不能得到带有空格的字符串。
  • nextLine():
  1. 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
  2. 可以获得空白。

控制流

if-else

if-else 语句是控制程序执行流程最基本的形式。 其中 else 是可选的,因此可以有两种形式的 if。代码示例:

if(Boolean-expression) 
	“statement” 

if(Boolean-expression) 
	“statement”
else
  “statement”

布尔表达式(Boolean-expression)必须生成 boolean 类型的结果,执行语句 statement 既可以是以分号 ; 结尾的一条简单语句,也可以是包含在大括号 {} 内的的复合语句 —— 封闭在大括号内的一组简单语句。

注解else if 并非新关键字,它仅是 else 后紧跟的一条新 if 语句。

迭代语句

whiledo-whilefor 用来控制循环语句(有时也称迭代语句)。只有控制循环的布尔表达式计算结果为 false,循环语句才会停止。

while

while 循环的形式是:

while(Boolean-expression) 
  statement

执行语句会在每一次循环前,判断布尔表达式返回值是否为 true

do-while

do-while 的格式如下:

do 
	statement
while(Boolean-expression);

whiledo-while 之间的唯一区别是:即使条件表达式返回结果为 falsedo-while 语句也至少会执行一次。while 循环体中,如布尔表达式首次返回的结果就为 false,那么循环体内的语句不会被执行。

for

for 循环可能是最常用的迭代形式。 该循环在第一次迭代之前执行初始化。随后,它会执行布尔表达式,并在每次迭代结束时,进行某种形式的步进。for 循环的形式是:

for(initialization; Boolean-expression; step)
  statement

初始化 (initialization) 表达式、布尔表达式 (Boolean-expression) ,或者步进 (step) 运算,都可以为空。每次迭代之前都会判断布尔表达式的结果是否成立。一旦计算结果为 false,则跳出 for 循环体并继续执行后面代码。 每次循环结束时,都会执行一次步进。

无限循环

 for(; ;) { // 无限循环 }

它与 while(true) 无异,使用哪种完全取决于你的编程品味。

逗号操作符

在 Java 中逗号运算符(这里并非指我们平常用于分隔定义和方法参数的逗号分隔符)仅有一种用法:在 for 循环的初始化和步进控制中定义多个变量。我们可以使用逗号分隔多个语句,并按顺序计算这些语句。注意:要求定义的变量类型相同。

for-in 语法

Java 5 引入了更为简洁的“增强版 for 循环”语法来操纵数组和集合。

for-in 无需你去创建 int 变量和步进来控制循环计数。代码示例:

for(float x : f) {

这条语句定义了一个 float 类型的变量 x,继而将每一个 f 的元素赋值给它。

  • 任何一个返回数组的方法都可以使用 for-in 循环语法来遍历元素。

  • for-in 循环适用于任何可迭代(iterable)的 对象。

switch

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

switch(integral-selector) {
	case integral-value1 : statement;   break;
	case integral-value2 : statement;	break;
	case integral-value3 : statement;	break;
	case integral-value4 : statement;	break;
	case integral-value5 : statement;	break;
	// ...
	default: statement;
}

其中,integral-selector (整数选择因子)是一个能够产生整数值的表达式,switch 能够将这个表达式的结果与每个 integral-value (整数值)相比较。若发现相符的,就执行对应的语句(简单或复合语句,其中并不需要括号)。若没有发现相符的,就执行 default 语句。

在上面的定义中,大家会注意到每个 case 均以一个 break 结尾。这样可使执行流程跳转至 switch 主体的末尾。这是构建 switch 语句的一种传统方式,但 break 是可选的。若省略 break, 会继续执行后面的 case 语句的代码,直到遇到一个 break 为止。通常我们不想出现这种情况,但对有经验的程序员来说,也许能够善加利用。注意最后的 default 语句没有 break,因为执行流程已到了 break 的跳转目的地。当然,如果考虑到编程风格方面的原因,完全可以在 default 语句的末尾放置一个 break,尽管它并没有任何实际的作用。

switch 语句是一种实现多路选择的干净利落的一种方式(比如从一系列执行路径中挑选一个)。但它要求使用一个选择因子,并且必须是 intchar 那样的整数值。(Java 7 增加了在字符串上 switch 的用法。)

请注意 case 语句能够堆叠在一起,为一段代码形成多重匹配,即只要符合多种条件中的一种,就执行那段特别的代码。这时也应该注意将 break 语句置于特定 case 的末尾,否则控制流程会继续往下执行,处理后面的 case

break 和 continue

在任何迭代语句的主体内,都可以使用 breakcontinue 来控制循环的流程。其中,break 表示跳出当前循环体。而 continue 表示停止本次循环,开始下一次循环。

注意continue 语句可将控制权移回循环的顶部,而不会执行 continue 之后的任何操作。

标签:语句,控制,Java,流程,break,case,while,循环,statement
来源: https://www.cnblogs.com/RemusGod/p/15989197.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有