Java流程控制
Java流程控制
Scanner方法及其使用
-
hasNext():是否有下一项输入
-
hasNextLine():是否有下一项输入
-
hasNextInt():是否有下一项输入且是整数
-
hasNextFloat():是否有下一项输入且是浮点数
-
next():读取有效字符后结束,有效字符前空格自动去掉,有效字符后空格作为结束符。
// 核心代码示例 String str = scanner.next(); //输入为: hello world // 注意hello前有4个空格! System.out.println("输入内容为:" + str); // 输出结果为:hello ----------------------------------------------------------------------------------- if(scanner.hasNext()){} // 上述1,2,3,4点都将录入键盘输入!!!
-
nextLine():读取所有字符(包括空格)
import java.util.Scanner;
public class ScannerUse {
public static void main(String[] args){
// 新建一个输入类
Scanner scanner = new Scanner(System.in);
//将输入内容 全部 赋值给字符串str
String str = scanner.nextLine();
System.out.println("输入内容为:" + str);
//一定记得关闭输入输出流
scanner.close;
}
}
顺序结构
简单...
选择结构
-
if单选择结构
-
if双选择结构
-
if多选择结构
-
嵌套的if结构
-
switch多选择结构
// 1.if单选择结构 if(布尔表达式){ // 布尔表达式值为true将执行的语句 } // 2.if双选择结构 if(布尔表达式){ // 布尔表达式值为true,则执行该语句 }else { // 布尔表达式值为false,则执行该语句 } // 3.if多选择结构 if(布尔表达式1){ // 布尔表达式1的值为true,则执行该语句 }else if(布尔表达式2){ // 布尔表达式2的值为true,则执行该语句 }else if(布尔表达式3){ // 布尔表达式3的值为true,则执行该语句 }else { // 以上 都不执行 则执行该语句 } // 4.嵌套的if结构 if(布尔表达式1){ // 布尔表达式1值为ture,则执行代码 if(布尔表达式2){ // 布尔表达式2值为ture,则执行代码 } } // 5.switch多选择结构 switch(expression){ case value : // 语句 break; case value : // 语句 break; // case语句数任选 default : // 语句 }
反编译:找到.java文件生成的.clss文件,拖到编译器当中即可
循环结构
- while循环
- do...while循环
- for循环
- 增强for循环(类比python里的for...in...循环)
// 1.while循环
while(布尔表达式){
// 语句
}
// 2.do...while循环
do{
// 语句
}while(布尔表达式);
// 3.for循环(for循环的嵌套可实现打印99乘法表,打印三角形等等)
for(初始化; 布尔表达式; 更新){
// 语句
}
// 4.增强for循环(主要用于数组或集合)
// 声明语句:声明新的局部变脸
// 表达式:要访问的数组名
for(声明语句 : 表达式){
// 语句
}
break,continue和goto
break:跳出整个循环
continue:跳出单次循环
goto:保留关键字,用标签(label)可以实现
// 打印101到200之间的所有质数
// 核心代码
int count = 0;
outer:for (int i = 101; i < 200; i++){
for (int j = 2; j < i/2; j++){
// 有约数则跳至外部标签
if (i % j == 0){
continue outer;
}
}
System.out.print(i + " ");
}