Java-条件判断-02
一、条件判断
1.1、用户交流 Scanner
-
java.util.Scanner是 Java5 的新特征。 -
基本语法:
Scanner s = new Scanner(System.in); -
接收语法:
nextLine():接受字符串。nextIne():接受整数。nextFloat():接受浮点数。
-
通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串,在读取前我们一般需要使用 hasNext() 与 hasNextLine() 判断是否还有输入的数据。
-
例如:
// 导包 import java.util.Scanner; // next() 方法输入 Scanner scanner = new Scanner(System.in); System.out.println("使用 next 方法输入:"); // 判断用户是否还有输入 if (scanner.hasNext()){ // 使用 next() 方法接受数据 String str = scanner.next(); System.out.println("输入:"+str); } // 关闭资源占用 scanner.close(); ---------------------------------------------------------- // nextLine() 方法输入 Scanner scanner = new Scanner(System.in); System.out.println("使用 nextLine 方法输入:"); // 判断用户是否还有输入 if (scanner.hasNextLine()){ // 使用 nextLine() 方法接受数据 String str = scanner.nextLine(); System.out.println("输入:"+str); } // 关闭资源占用 scanner.close(); -
next():
- 一定要读取到有效字符后才可以结束输入。
- 对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
- next() 不能得到带有空格的字符串。
-
nextLine():
- 以 Enter 为结束符,也就是说 nextLine() 方法返回的是输入回车之前的所有字符。
- 可以获得空白。
1.2、顺序结构
- JAVA 的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。
- 顺序结构是最简单的算法结构。
1.3、选择结构
1.3.1、if 单选择结构
-
语法:
if(布尔表达式){ // 如果布尔表达式为 true 将执行的语句 }
1.3.2、if 双选择结构
-
语法:
if(布尔表达式){ // 如果布尔表达式的值为 true 执行的语句。 }else{ // 如果布尔表达式的值为 false 执行的语句。 }
1.3.3、if 多选择结构
-
语法:
if(布尔表达式1){ // 如果布尔表达式 1的值为 true 执行的语句。 }else if(布尔表达式2){ // 如果布尔表达式 2的值为 true 执行的语句。 }else if(布尔表达式3){ // 如果布尔表达式 3的值为 true 执行的语句。 }else{ // 如果以上布尔表达式都不为 true 执行的语句。 }
1.3.4、嵌套的 if 结构
-
语法:
if(布尔表达式1){ // 如果布尔表达式1 的值为 true 执行的语句。 if(布尔表达式2){ // 如果布尔表达式2 的值为 true 执行的语句。 } }
1.3.5、switch 多选择结构
-
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
-
switch 语句中的变量类型可以是:
- byte、short、int、或者 char。
- 从 Java SE 7 开始,switch 支持字符串 String 类型
- 同时 case 标签必须为字符串常量或字面量。
-
case 有穿透性,如果不添加 break,case 会继续执行直到碰到 break、default 或 语句末尾 才会停止
int a = 10; switch (a){ // 基础值 case 1: // 判断 // 选择语句; break; // 可选 case 2: // 判断 // 选择语句; break; // 可选 // 你可以有任意数量的 case 语句 default: // 语句; }
1.4、反编译(IDEA)
- 点击
File选择Project Structure - 复制
Project compiler output下面的路径。 - 使用文件管理器打开此路径,找到
.class文件,复制到当前项目文件夹下。 - 使用 IDEA 打开
.class文件。
1.5、循环结构
- 循环基本结构:
- 初始化语句:循环开始最初执行,只做一次。
- 条件判断:如果成立循环继续,否则循环结束。
- 循环体:重复要做的事情。
- 步进迭代:控制循环的语句。
1.5.1、 while 循环
- 先判断布尔表达式是否为 true,只要是 true 循环就会一直执行下去。
- 语法:
while(布尔表达式){
// 循环内容
}
1.5.2、do ... while 循环
-
先执行一遍,再判断布尔表达式是否为 true。
-
语法:
do { // 循环语句 }while(布尔表达式);
1.5.3、for 循环
-
for 循环语句是支持迭代的通用结构,是最有效、最灵活的循环结构。
-
语句:
for(初始化; 布尔表达式; 迭代语句){ // 循环语句。 } // for 的死循环 for(;;){ }
1.5.4、增强型 for 循环
-
在 Java 5 中引入了一种主要用于 数组 或 集合 的增强型 for 循环。
-
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
-
表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
-
内部原理是一个 Iterator 迭代器。
-
语法:
for(声明语句 : 表达式){ // 循环语句; } // 例题 int[] a = {10,20,30,50}; for(int x :a){ System.out.println(x); }
1.5.5、循环控制关键字
-
break:
- 在任何循环语句的主体部分,均可用 break 控制循环的流程。
- 用于强行退出循环,不执行循环中剩余的语句。
- break 语句也在 switch 语句中使用。
-
continue:
- 用在循环语句体中。
- 用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

浙公网安备 33010602011771号