Java流程控制
一、用户交互Scanner
java.util.Scanner是java5的新特征,通过Scanner获取用户输入//接收键盘数据
我们可以通过 Scanner 类来获取用户的输入。使用步骤如下:
1、导包
Scanner 类在java.util包下,所以需要将该类导入。导包的语句需要定义在类的上面。
import java.util.Scanner;
2、创建Scanner对象
Scanner scan = new Scanner(System.in);
3、接收数据
String str1 = scan.next();
示例
import java.util.Scanner;
public class Demo01 {//Scanner类的使用
public static void main(String[] args) {
//从键盘接收数据
Scanner scan = new Scanner(System.in);
System.out.println("next方式接收:");
//判断用户是否有输入
if (scan.hasNext()) {
String str1 = scan.next();
System.out.println("输入的语句为" + str1);
}
scan.close();//凡是属于IO流的类如果不关闭会一直占用资源,养成使用完关掉最好
}
}
//next方式接收 hasNext next
/* 1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
next() 不能得到带有空格的字符串。
*/
拓展:nextLine、nextInt、nextFloat hasNext~~
二. 流程控制语句
顺序结构、选择结构(也叫分支结构)、循环结构
1、顺序结构
程序默认结构,自上而下的执行
2、选择结构
1.if
if语句格式1
if (关系表达式) {语句体;}
if语句格式2
if (关系表达式) { 语句体1; }
else { 语句体2; }
if语句格式3
if (关系表达式1) {语句体1;}else if (关系表达式2) {语句体2;}
…
else {语句体n+1;}
2.switch
switch (表达式) {
case 1: 语句体1;
break;
case 2: 语句体2;
break;
…
default: 语句体n+1;
break;
}
case穿透现象: switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者是switch语句的末尾。
反编译 java-class(字节码文件)-反编译(IDEA)
3、循环结构
1.while
while
初始化语句;
while (条件判断语句) {
循环体语句;
条件控制语句;
}
do{}while
初始化语句;
do {
循环体语句;
条件控制语句;
}while(条件判断语句);
do{}while 至少执行一次
2.for
for
for (初始化语句;条件判断语句;条件控制语句) {
循环体语句;
}
增强for
for(int x:numbers){
循环体语句;
}
4、break&continue
1.break
跳出循环
2.continue
终止当次循环,继续下一次
continue只能再循环中进行使用
三、Debug
debug 断点调试 :是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序。
-
选择要设置断点的代码行,在行号的区域后面单击鼠标左键即可
-
在代码区域右键Debug执行
-
看Debugger&console窗口