1、分支控制:if else
int a = 10;
if (a > 5) {
System.out.println("hello word");
} esle if (a > 10) {
System.out.println("hello china");
} else {
System.out.println("hello"):
}
注意事项:
- 分支控制只有一个执行入口,有一个条件符合后面的不会再进行判断。
2、switch分支:
Scanner scanner = new Scanner(System.in):
System.out.println("请输入一个字符");
char c1 = scanner.next().charAt(0); // 截取接收到的字符串的第一个字符
switch(c1) {
case 'a' :
System.out.println("星期一");
break;
case 'b':
System.out.println("星期二");
braek;
default:
System.out.println("周三");
break;
}
Scanner scanner = new Scanner(System.in):
System.out.println("请输入一个月份");
int month = scanner.next();
switch(month) {
case 3:
case 4:
case 5:
System.out.println("这是春季");
break;
case 6:
case 7:
case 8:
System.out.println("这是夏季");
break;
注意事项:
1、表达式数据类型,要和case后面的常量类型一致,或者是可以相互比较得类(int、char)。
2、表达式中的返回值必须是:byte、short、int、char、enum[]、String。
3、case子句中的值必须是常量,不能是变量。
4、default子句是可选的。
5、break是用来跳出分支的,不写会一直执行到switch结尾。
3、for循环:
for(循环变量初始化; 循环条件; 循环变量迭代) {
循环操作;
}
for (int i = 0; i++; i< 10) {
System.out.println("hello word");
}
注意事项:
1、for循环初始化和变量迭代可以写到其它地方,但是两边的分号不能省略。
int i = 1;
for( ; i <= 10 ;) {
System.out.println("hello word");
i++;
}
System.out.println("i=" + i); // 可以在循环体外继续使用 i
//死循环
for(;;) {
System.out.println("ok");
}
2、循环变量初始值/循环遍历迭代可以有多条初始化语句,但要求类型一致,并且中间使用逗号隔开:
for (int i = 1, j = 2; i < 10; i++, j++) {
System.out.println("ok");
};
4、while循环:
循环变量初始化;
while(循环条件) {
循环语句;
循环变量迭代;
}
int i = 1;
while(i <= 100) {
if(i % 3 == 0) {
System.out.println(i);
};
i++;
}
5、do while循环
循环变量初始化;
do {
循环语句;
循环变量迭代;
} while(循环条件);
int i = 1;
do {
System.out.println("hello word");
i++;
} while(i <= 100);
6、双重for循环
// 3个班级,每个班级5人。求每个班级平均分及三个班级总平均分以及及格人数
Scanner scanner = new Scanner(System.in);
double totalGrade = 0;
int passNum = 0;
for (int i = 1; i <= 3; i++) { // 外层循环表示班级
int sum = 0;
for (int j = 1; j <= 5; j++) { // 内存循环表示人数
System.out.println("请输入第" + i + "个班级第" + j + "个学生成绩");
double stuGrade = scanner.nextInt();
if (stuGrade >= 60) {
passNum++;
}
sum += stuGrade;
}
totalGrade += sum;
System.out.println("第" + i + "个班级的平均分为:" + (sum/5));
}
System.out.println("所有班级的平均分为:" + (totalGrade/15));
System.out.println("3个班级及格人数为:" + passNum);
7、循环终止语句:
1、break:结束本层循环
Scanner scanner = new Scanner(System.in);
int chance = 3;
for (int i = 0; i < 3; i++) {
System.out.println("请输入用户名");
String userName = scanner.next();
System.out.println("请输入密码");
String passWord = scanner.next();
if ("张三".equals(userName)&& "123".equals(passWord) ) { // 将变量放在。避免空指针异常
System.out.println("登录成功");
break;
} else {
System.out.println("登录失败");
chance--;
System.out.println("你还有" + chance + "次机会");
}
}
2、continue:结束本次循环,继续下一次循环
3、return:表示跳出所在的方法。如果return写在main方法中,表示退出程序