分支结构

1.包

包的概念: 包用于方便管理Java文件 以及可以存放同名的Java文件

包的规则: 域名倒置 全部小写 不能以点开头或者结尾 可以包含点 举例:com.qfedu.name com.baidu.name cn.sina.name

包的声明永远在类的第一行 导包其次

2. 变量命名

变量的命名规则: 字下美人数骆驼 有意义 可以以字母、下划线、美元符号、人民币符号开头 可以包含数字,不能数字开头 见名知意

  1. package com.qfedu.test1;
  2. /**
  3. * 变量的命名规则:
  4. * 字下美人数骆驼 有意义
  5. * 可以以字母、下划线、美元符号、人民币符号开头
  6. * 可以包含数字,不能数字开头
  7. * 见名知意
  8. * @author WHD
  9. *
  10. */
  11. public class Test2 {
  12. public static void main(String[] args) {
  13. int a = 20;
  14. int _b = 30;
  15. int $c = 35;
  16. int d = 40;
  17. int e3 = 45;
  18. int studentAge = 18;
  19. }
  20. }

3. if结构

if:如果 if(布尔表达式){ // 代码1 } 后续代码

如果条件成立 执行代码1 然后执行后续代码 如果条件不成立 直接执行后续代码

  1. package com.qfedu.test2;
  2. import java.util.Scanner;
  3. /**
  4. * 根据成绩判断是否获得奖励
  5. * 如果
  6. * Java成绩大于90 并且 音乐成绩 大于80 获得奖励 苹果12袋
  7. * 或者
  8. * Java成绩大于80 并且舞蹈成绩等于100 获得奖励 苹果12袋
  9. *
  10. */
  11. public class Test3 {
  12. public static void main(String[] args) {
  13. // ctrl + 1 回车 导包
  14. Scanner input = new Scanner(System.in);
  15. System.out.println("请输入Java成绩");
  16. int javaScore = input.nextInt();
  17. System.out.println("请输入音乐成绩");
  18. int musicScore = input.nextInt();
  19. System.out.println("请输入舞蹈成绩");
  20. int danceScore = input.nextInt();
  21. if((javaScore > 90 && musicScore > 80) || ( javaScore > 80 && danceScore == 100)) {
  22. System.out.println("奖励苹果12袋");
  23. }
  24. System.out.println("程序结束");
  25. }
  26. }

4. if-else结构

if:如果 if(布尔表达式){ // 代码1 }else{ // 代码2 }

后续代码 如果条件成立 执行代码1 然后执行后续代码 如果条件不成立 执行代码2 再执行后续代码

  1. package com.qfedu.test3;
  2. import java.util.Scanner;
  3. /**
  4. * 提示用户输入年龄 根据年龄判断是否成年
  5. * 都给予提示
  6. * @author WHD
  7. *
  8. */
  9. public class Test2 {
  10. public static void main(String[] args) {
  11. Scanner input = new Scanner(System.in);
  12. System.out.println("请输入您的年龄");
  13. int age = input.nextInt();
  14. if(age >= 18) {
  15. System.out.println("成年了");
  16. }else {
  17. System.out.println("未成年不能沉迷网络");
  18. }
  19. System.out.println("程序结束");
  20. }
  21. }

5. 多重if结构

语法:
if(布尔表达式1){
//代码块1
}else if(布尔表达式2){
//代码块2
}else if(布尔表达式3){
//代码块3
}else{
//代码块4
}

  1. package com.qfedu.test4;
  2. import java.util.Scanner;
  3. /**
  4. * 根据成绩划分等级
  5. * 大于95 优秀
  6. * 大于80 良好
  7. * 大于70 中等
  8. * 大于等于60 及格
  9. * 小于60 不及格
  10. *
  11. * 多重if使用与判断某个值处于连续的区间的情况
  12. * 条件必须使用升序或者降序 不能是乱序的
  13. * else if 不能单独出现 必须结合if
  14. * 多重if最后的else 可写可不写 根据需求
  15. * @author WHD
  16. *
  17. */
  18. public class Test1 {
  19. public static void main(String[] args) {
  20. Scanner input = new Scanner(System.in);
  21. System.out.println("请输入您的成绩");
  22. int score = input.nextInt();
  23. if(score > 80) {
  24. System.out.println("良好");
  25. }else if(score > 95) {
  26. System.out.println("优秀");
  27. }else if(score > 70) {
  28. System.out.println("中等");
  29. }else if(score >= 60) {
  30. System.out.println("及格");
  31. }else {
  32. System.out.println("不及格");
  33. }
  34. System.out.println("程序结束");
  35. }
  36. }

6. 嵌套if结构

if(外层表达式){
if(内层表达式){
//内层代码块1
}else{
//内层代码块2
}
}else{
//外层代码块
}

  1. package com.qfedu.test5;
  2. import java.util.Scanner;
  3. /**
  4. * 嵌套if结构
  5. * 一个if结构可以嵌套其他的if结构 没有上限 一般不超过三层
  6. * 当外层条件满足以后 再判断内层条件
  7. *
  8. * 需求:举行百米跑步比赛 跑步时间在12秒以内 可以进入决赛
  9. * 根据性别进行分组
  10. *
  11. * 需求升级:
  12. * 男生12秒 女生15秒进入决赛
  13. * 根据 时间 以及性别 分组
  14. *
  15. */
  16. public class Test1 {
  17. public static void main(String[] args) {
  18. Scanner input = new Scanner(System.in);
  19. System.out.println("请输入您的跑步时间");
  20. int time = input.nextInt();
  21. System.out.println("请输入您的性别");
  22. String sex = input.next();
  23. if(time < 12) {
  24. // 可以进入决赛 分组
  25. // 判断字符串使用equals()
  26. // 使用被判断的字符串 + . + equals(比较的内容)
  27. if(sex.equals("男")) {
  28. System.out.println("进入男子组");
  29. }else if(sex.equals("女")) {
  30. System.out.println("进入女子组");
  31. }else {
  32. System.out.println("暂不支持第三性别");
  33. }
  34. }else {
  35. System.out.println("继续加油~ 奥利给");
  36. }
  37. System.out.println("程序结束");
  38. }
  39. }

7. switch结构

switch(变量|表达式){
case 值1:
逻辑代码1; break; case 值2:
逻辑代码2; break; case 值n:
逻辑代码n; break; default:
未满足时的逻辑代码; break; } 支持的数据类型 byte short int char String(JDK7) 枚举

break和 continue区别: break跳出当前;continue跳过当前语句

  1. package com.qfedu.test6;
  2. import java.util.Scanner;
  3. /**
  4. * switch 如果每个case之后的代码是相互独立执行的 那么必须加上break
  5. * break释义:打破折断
  6. * 作用:跳出switch结构
  7. *
  8. * default的位置不固定 规范要求写在末尾 必须也加上break
  9. * @author WHD
  10. *
  11. */
  12. public class Test2 {
  13. public static void main(String[] args) {
  14. Scanner input = new Scanner(System.in);
  15. System.out.println("请输入名次");
  16. int num = input.nextInt();
  17. switch(num) {
  18. case 1:
  19. System.out.println("夏令营");
  20. break;
  21. case 2:
  22. System.out.println("笔记本一本");
  23. break;
  24. case 3:
  25. System.out.println("苹果1袋");
  26. break;
  27. case 4:
  28. System.out.println("口头表扬一次");
  29. break;
  30. default:
  31. System.out.println("继续努力");
  32. break;
  33. }
  34. System.out.println("程序结束");
  35. }
  36. }