JAVA控制流程
JAVA流程控制
用户交互Scanner
用来获取用户的输入,需要导入工具包 java.until.Scanner
基本语法
Scanner scanner = new Scanner(system.in); //定义一个scanner对象
if(scanner.hasNextLine()){ //判断用户有没有输入字符串
String str = scanner.nextLine(); //定义一个变量来接收输入的字符串
System.out.println("输入的内容为:"+str);
}
scanner.close; //释放空间
通过Scanner类的next()和nextLine()方法获取输入的字符串,在读取前需要通过hasNext()和hasNextLine()判断是否还有输入的数据
注意点:
next():1.一定要读取到有效字符后才能结束输入
2.对获取到的第一个有效字符之前的空格,next()方法会直接将空格删除,输入的内容中不会出现,在获取到字符后,碰到第一个空格,那么输入后的内容只会显示空格前的内容,即next()不会得到带有空格的字符串
nextLine():1.可以获得输入回车前的所有字符串,包括空格
可以输入的类型
1. nextInt()
2. nextFloat()
3. nextDouble()
4. nextString()
顺序结构
java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句的输入
顺序结构是最简单的算法结构
任何一个算法都离开不顺序结构这一基本算法结构
选择结构
-
if 单选择结构
if(布尔表达式){ //当布尔表达式为true时执行的语句 } -
if 双选择结构
if(布尔表达式){ //当布尔表达式为true时执行的语句 }else{ //当布尔表达式为false时执行的语句 } -
if 多选择结构
if(布尔表达式1){ //当布尔表达式1为true时执行的语句 }else if(布尔表达式2){ //当布尔表达式为2true时执行的语句 }else if(布尔表达式3){ //当布尔表达式3为true时执行的语句 }else{ //当不满足以上条件时执行的语句 } -
嵌套的if 结构
if(布尔表达式1){ if(布尔表达式2){ if(布尔表达式3){ } } } -
switch多选择结构
switch(变量名){
case value1:
语句块 //当变量的值与value1相等时,执行语句
break; //可选
case value2:
语句块 //当变量的值与value1相等时,执行语句
default: //可选
语句块
}
switch语句中的变量类型可以是:byte、short 、int、char、String,同时case标签必须为字符串常量或字面量,Switch语句需要注意case穿透,可利用break或continue来解决
break:强制退出循环,不执行循环中的剩余语句
continue:用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行 下一次是否执行循环的判定
lable标签:与break或continue使用时,可以将循环中断到变迁存在的位置
循环结构
-
while 循环
while(判断条件){ //语句 } -
do...while 循环
do(){ //语句 }while(判断条件)while和do...while循环的区别:
- while先判断后执行,do...while先执行后判断
- do...while 循环至少会被执行一次,这是两者的主要区别
-
for 循环
for(初始化;布尔表达式(结束条件);更新){ //语句 }- for循环是支持迭代的一种通用结构,是最有效、最灵活的循环结构
- for循环的执行次数是在执行前就确定的
-
增强for 循环
for(声明语句(如:int x):表达式){ //代码语句 }增强for循环只要用于数组或集合,用来遍历,更加高效
声明语句:声明新的局部变量,给变量的类型必须和数组元素的类型匹配。其作 用域限定在循环语句块,其值与此时数组元素的值相等
表达式:表达式是要访问的数组名,或者是返回值为数组的方法

浙公网安备 33010602011771号