Scanner 顺序 选择 循环
java流程控制
用户交互Scanner
之前学的基本语法中我们并没有实现程序和人的交互,但是java给我们提供了这样一个工具类,我们可以获取用户的输入。
java.util.Scanner 通过Scanner类来获取用户的输入
1
| Scanner s = new Scanner(System.in);
|
通过Scanner类的next() nextline() 获取输入的字符串
读取之前使用 hasNext() hasNextline() 判断是否还有输入的数据
1 2 3 4 5
| next(): 一定要读取到有效字符后才可以结束输入 对输入有效字符前的空白,next()方法会自动将其去掉 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符 next()不能得到带有空白的字符串
|
1 2 3
| nextline() 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符 可以获得空白
|
顺序结构
1 2 3 4
| java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行 顺序结构是最简单的算法结构 从上到下的顺序进行的,若干个依次执行的处理步骤组成的 是任何一个算法都离不开的一种基本算法结构
|
选择结构
if单选择结构
if双选择结构
if多选择结构
1 2 3 4 5 6 7 8 9
| if(布尔表达式 1){
}else if(布尔表达式 2){
}else if(布尔表达式 3){
}else{
}
|
嵌套的if结构
1 2 3 4 5
| if(布尔表达式 1){ if(布尔表达式 2){ } }
|
Swith多选择结构
判断一个变量与一系列值中的某个值是否相等,每一个值称为一个分支
1 2 3 4 5 6 7 8 9 10 11 12 13
| switch(expression){ case value: break; case value: break; default: }
|
1
| 反编译 java---class(字节码文件)---反编译(IDEA)
|
循环结构
while循环
先判断后执行
1 2 3 4 5 6 7 8 9 10
| while(布尔表达式){ }
|
do…while循环
有时我们需要即使不满足条件,也至少执行一次
先执行后判断
for循环
- 支持迭代的一种通用结构,最有效、最灵活的循环结构
- for循环执行的次数是在执行前就确定的
注意:
- 最先执行初始化步骤
- 可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句
- 然后检测布尔表达式的值
- 开始执行循环体后面的语句,再次检测布尔表达式。循环执行上面过程。
1 2
| println 输出完会换行 print 输出完不会换行
|
增强for循环
jdk5引入的,主要用于数组或集合的增强for循环

break & continue
1 2
| break 强制退出循环 不干了 continue 终止某次循环 跳过一些东西
|

练习
打印三角形 5行