Java流程控制举例,3:Java流程控制

Java流程控制

一、用户交互Scanner

1、Scanner对象

说明:

·需要导入java.util.Scanner包 ;

·Java5的新特征,可以通过Scanner类来获取用户的输入。

·通过Scanner类的next()和nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()和hasNextLine()判断是否还有输入的数据。

基本语法:

import java.util.Scanner;//导入Scanner类

Scanner s = new Scanner(System.in);//

s = scanner.nextLine();//让用户输入数据,存到变量s中,以回车结束

注意事项:

622c66faa5a18f9736bc9ff5e7d2c37e.png

Scanner其他用法:根据输入,返回布尔值

语法:scanner.hasNext数据类型()方法:

举例:scanner.hasNextInt();如果输入的是Int类型,则返回true,否则返回false,可用于if、while等条件判断中。

二、顺序结构

java的基本结构,即按照顺序一句一句执行。

三、选择结构

1 if条件判断

if单选择

if(布尔表达式){

//布尔表达式为true时执行语句块内语句

}

if双选择

if(布尔表达式){

//布尔表达式为true时执行语句块内语句

}else{

//布尔表达式为false时执行语句块内语句

}

if多选择

if(布尔表达式1){

//布尔表达式1为true时执行语句块内语句

}else if(布尔表达式2){

//布尔表达式2为true时执行语句块内语句

}else if(布尔表达式3){

//布尔表达式3为true时执行语句块内语句

}else{

//以上布尔表达式均为false时执行语句块内语句

}

镶嵌的if结构

if(布尔表达式1){

//布尔表达式1为true时执行语句块内语句

if(布尔表达式2){

//布尔表达式2为true时执行语句块内语句

}

}

switch多选择结构

描述:

switch case语句也可实现多选择结构。

switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为1个分支。

规则:switch中的变量类型可以是:

byte、short、int或者char

Java SE7以后,switch才支持字符串String类型

case标签必须为字符串常量或字面量

语法:

switch(expression){//以表达式的返回值来判断

case value1:

//语句块

break;//跳出switch语句,非必需

case value2:

//语句块

break;

default://默认的一般情况下,无条件执行

//语句块

}

*反编译:

生成.java文件→

生成.class文件(字节码)→反编译执行(用IDEA)

四、循环结构

1while循环

while(布尔表达式){

//布尔表达式为true,一直循环

}

大多数情况会让循环停下来,需要一个让表达式失效的方式来结束循环

2do...while循环

即使不满足条件,也至少执行一次。do...while会先执行1次,再进行判断

do{

//代码语句

}while(布尔表达式);

3for循环

描述:

for循环语句是支持迭代的一种通用结构,是最灵活、最有效的循环结构。

for循环使一些循环结构变得更加简单

for循环执行的次数在执行前就确定了。

for(初始化;布尔表达式;更新){

//代码语句

}

说明:

最先执行的是初始化步骤,可以声明一种类型、可以初始化1个或多个循环控制变量,也可以初始1个空语句

然后,检测布尔表达式的值,true则循环体执行,为false则循环终止,执行循环体后面的语句。

执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)

最后再次检测布尔表达式,循环执行上面的过程。

以下形式为for循环下的死循环

for(;;){

}

IDEA快捷键:

//100.for等效于

for (int i = 0; i < 100; i++) {

}

4增强for循环

for(声明语句:表达式){

}

主要用于数组或者集合

声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此事数组元素的值相等。

表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

五、break&continue&goto

1break

在任何循环语句的主题部分,均可用break控制循环的流程。break用于强行退出循环,不再执行循环中剩余的语句。(在switch语句中也可使用)

2continue

用在循环体语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

3goto

goto是Java的一个保留字,但Java中的goto没有功能。可以通过带标签的break和continue实现goto的功能。

标签是指后面跟着一个冒号的标识符,如:label:

对Java来说,唯一用到标签的地方实在循环语句之前。在循环值钱设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但随同便签使用,它们就会中断到存在标签的地方。

六、练习

利用循环:

打印九九乘法表

打印正三角形

标签:语句,控制,Java,Scanner,流程,循环,执行,表达式,布尔

来源: https://www.cnblogs.com/keepdiligent/p/14441919.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值