1.顺序结构
2.if选择结构
-
if单选择结构
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
-
if双选择结构
if(布尔表达式){
//如果布尔表达式的值为true
} else{
//如果布尔表达式的值为false
}
-
if多选择结构
if(布尔表达式 1){
//如果布尔表达式1的值为true,执行代码
} else if(布尔表达式 2){
//如果布尔表达式2的值为true,执行代码
} else if(布尔表达式 3) {
//如果布尔表达式3的值为true,执行代码
} else{
//如果以上布尔表达式都不为true,执行代码
}
-
嵌套的if结构
你可以在另一个if或者else if语句中使用if或者else if语句,也可以像if语句一样嵌套else if…else
if(布尔表达式 1){
///如果布尔表达式 1的值为true,执行代码
if(布尔表达式 2){
///如果布尔表达式 2的值为true,执行代码
}
}
3.Switch选择结构
switch语句中的变量类型可以是:
-
byte、short、int或者char
-
从Java SE 7开始,switch支持字符串String类型,同时case标签必须为字符串常量或字面量
switch(expression){
case value:
//语句
break; //可选
case value:
//语句
break; //可选
//你可以有任意数量的case语句
default://可选
//语句
}
package com.tudou.operator;
//import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
char grade = 'C';
switch(grade){
case 'A':
System.out.println("优秀");
break; //可选
case 'B':
System.out.println("良好");
break;
case 'C':
System.out.println("及格");
break;
case 'D':
System.out.println("不及格");
break;
default:
System.out.println("未知");
}
}
}
JDK7的新特性,表达式结果可以是字符串:
package com.tudou.operator;
//import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
String name1 = "土豆";
//JDK7的新特性,表达式结果可以是字符串
//字符的本质还是数字
//反编译步骤: java---class(字节码文件) ----反编译(用IDEA)
switch (name1){
case "土豆":
System.out.println("土豆");
break;
case "番茄":
System.out.println("番茄");
break;
default:
System.out.println("???");
}
}
}
上述文件的反编译结果:
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package com.tudou.operator;
public class Demo03 {
public Demo03() {
}
public static void main(String[] args) {
String name1 = "土豆";
byte var3 = -1;
switch(name1.hashCode()) {
case 727303:
if (name1.equals("土豆")) {
var3 = 0;
}
break;
case 965338:
if (name1.equals("番茄")) {
var3 = 1;
}
}
switch(var3) {
case 0:
System.out.println("土豆");
break;
case 1:
System.out.println("番茄");
break;
default:
System.out.println("???");
}
}
}
4.While循环结构
while(布尔表达式){
//循环内容
}
-
只要布尔表达式为true,循环就会一直执行下去
-
少部分情况需要循环一直执行,比如服务器的请求响应监听等
-
循环条件一直为true就会造成无限循环【死循环】
do…while循环
-
对于while语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
-
do…while循环和while循环相似,不同的是,do…while循环至少会执行一次。
do{
//代码语句
}while(布尔表达式);
while和do…while的区别
-
while先判断后执行,do…while是先执行后判断
-
do…while总是保证循环体会被至少执行一次
5.For循环
for循环是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
for循环执行的次数是在执行前就确定的。
for(初始化;布尔表达式;更新){
//代码语句
}
IDEA快捷生成for循环: 100.for 回车
6.break continue
-
break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)
-
continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
-
goto关键字
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/java/279170.html