一、if结构
1.1 基本if结构
1. public static void main(String[] args) {
2. // 基本分支结构
3. // if(条件)
4. int age = 21;//定义年纪
5. if(age > 22) {
6. // 当条件成立时执行
7. System.out.println("可以结婚了");
8. }
9. }
1.2 if-else结构
1. public static void main(String[] args) {
2. // if-else结构
3. int num = 2;
4. if(num > 1) {
5. // 成立后执行的代码块
6. System.out.println("一起开黑");
7. }else {
8. // 不成立后执行的代码块
9. System.out.println("在家睡觉");
10. }
11. }
1.3多重if结构
1. public static void main(String[] args) {
2. // if-else if-else结构
3. String weather = "晴";
4. if(weather.equals("雨")) {
5. System.out.println("出门带伞");
6. }else if(weather.equals("雪")) {
7. System.out.println("出门带外套");
8. }else if(weather.equals("晴")) {
9. System.out.println("可以室外活动");
10. }else {
11. System.out.println("在家睡觉");
12. }
13.
14. int position = 5;
15. if(position > 1) {
16. System.out.println("我是上单,出门多兰盾");
17. }else if(position > 2) {
18. System.out.println("我是中单,出门多兰戒");
19. }else if(position > 3) {
20. System.out.println("我是辅助,出门圣物之盾");
21. }else if(position > 4) {
22. System.out.println("我是ADC,出门多兰剑");
23. }else {
24. System.out.println("我是打野,出门打野刀");
25. }
26.
27. // 条件不可能满足多个,所以判断的顺序可以交换
28. int score = 82;
29. if(score == 100) {
30. System.out.println("完美");
31. }else if(score >= 90 && score < 100) {
32. System.out.println("优秀");
33. }else if(score >= 80 && score < 90) {
34. System.out.println("良好");
35. }else if(score >= 70 && score < 80) {
36. System.out.println("一般");
37. }else if(score >= 60 && score < 70) {
38. System.out.println("及格");
39. }else {
40. System.out.println("不及格");
41. }
42.
43. // 条件可能满足多个,需要注意顺序
44. int score1 = 82;
45. if(score1 == 100) {
46. System.out.println("完美");
47. }else if(score1 >= 90) {
48. System.out.println("优秀");
49. }else if(score1 >= 80) {
50. System.out.println("良好");
51. }else if(score1 >= 70) {
52. System.out.println("一般");
53. }else if(score1 >= 60) {
54. System.out.println("及格");
55. }else {
56. System.out.println("不及格");
57. }
58. }
1.4 嵌套if结构
1. public static void main(String[] args) {
2. //
3. String zhongzu = "人族";
4. String zhiye = "法师";
5. if(zhongzu.equals("精灵")) {
6. System.out.println("你选择了精灵族");
7. if(zhiye.equals("法师")) {
8. System.out.println("你选择了精灵法师");
9. }else {
10. System.out.println("你选择了精灵射手");
11. }
12. }else {
13. System.out.println("你选择了人族");
14. if(zhiye.equals("狂战士")) {
15. System.out.println("你选择了人族狂战士");
16. }else {
17. System.out.println("你选择了人族骑士");
18. }
19. }
20. }
二、switch结构
`
1. // 定义三个变量,年份、月份和日期,输出该日期是一年的第几天(考虑闰年)
2. int month = 3;
3. int day = 20;
4. int year = 2000;
5. int days = 0;
6. switch(month) {
7. case 12:
8. days = days + 30; // 加上11月份的
9. case 11:
10. days = days + 31; // 加上10月份的
11. case 10:
12. days = days + 30; // 加上9月份的
13. case 9:
14. days = days + 31; // 加上8月日期
15. case 8:
16. days = days + 31; // 加上7月份的
17. case 7:
18. days = days + 30; // 加上6月份的
19. case 6:
20. days = days + 31; // 加上5月份的
21. case 5:
22. days = days + 30; // 加上4月日期
23. case 4:
24. days = days + 31; // 加上3月份的
25. case 3:
26. if(year % 400 == 0 || year % 4 == 0 && year % 100 != 0) {
27. days = days + 29; // 加上闰年2月份的
28. }else {
29. days = days + 28; // 加上平年2月份的
30. }
31. case 2:
32. days = days + 31; // 加上1月份的
33. case 1:
34. days = days + day; // 加上本月日期
35. }
36. System.out.println(year + "年" + month + "月" + day + "日是当年的第"+days+"天");
`
这个计算一年中第几天需要大家思考一下为什么是这样的,就是上一个月的天数过完了,才会挪到下一个月计算,没过完的话就是case 1中的天数
1. String day = "星期一";
2. switch(day) {
3. case "星期一":
4. System.out.println("吃面");
5. break;
6. case "星期二":
7. System.out.println("吃饭");
8. break;
9. default:
10. System.out.println("喝汤");
11. break;
12. }
三、变量的作用域
本文地址:H5W3 » 【Java】Java之分支结构