自学JAVA知识点总结 - 初级-第9页 - Aaron's Home -黄泽雨个人博客

记录与分享

自学JAVA知识点总结 - 初级

编程语言 JAVA

控制语句 - 选择结构

← 返回目录

if语句

        if单选择结构:对布尔表达式进行一次判定,若判定为true,则执行 {} 中的语句块,否则跳过该语句块。

public static void main(String[] args) {
  int a = (int) (6*Math.random())+1; //通过函数Math.random()产生一个随机数
    if (a<=3){ //如果a<=3为true,则输出语句块中的语句
      System.out.println("手气不太好啊,分数只有: " + a); //如果如果a<=3为true,则输出这条语句
    }
    if (a>3 && a<=5){ //如果a>3 && a<=5为true,则输出语句块中的语句
      System.out.println("手气不错,获得分数: " + a); //如果如果a>3 && a<=5为true,则输出这条语句
    }
    if (a==6) { //如果a==6,则输出语句块中的语句
      System.out.println("爆炸人品,获得分数: " + a); //如果如果a==6,则输出这条语句
    }
}

        if双选择结构:当布尔表达式为true时执行语句块1,否则执行语句块2(也就是else部分)。

public static void main(String[] args) {
  double r = 4 * Math.random(); // 随机产生[0.0 , 4.0]区间的半径,并根据半径求圆的面积和周长
  // Math.pow(r , 2) 求半径r的二次方
  // Math.Pi 指的是圆周率
  double area = Math.PI * Math.pow(r , 2); // S=π*r^2 求圆的面积
  double circle = 2 * Math.PI * r; // C=2*πr 求圆的周长
  System.out.println("半径为:" + r);
  System.out.println("面积为:" + area);
  System.out.println("周长为:" + circle);
  if (area <= circle) { //如果area <= circle为true,则输出语句块中的语句
    System.out.println("面积小于等于周长"); //如果如果area <= circle为true,则输出这条语句
  }else { //否则
    System.out.println("面积大于周长"); //否则输出这条语句
  }
}

        if多选择结构:当布尔表达式1为true时执行语句块1;否则判断布尔表达式2(else if),当布尔表达式2为true时执行语句块2;否则判断布尔表达式3(else if),当布尔表达式3为true时执行语句块3,否则……;如果1~n个布尔表达式均判定为false时,则执行语句块n+1,也就是else部分。

public static void main(String[] args) {
  int score = (int)(100 * Math.random()); //生成一个0-100的随机数,定义分数
  System.out.println("成绩: " + score + "分");
  if (score < 60) { //如果分数< 60为true,则输出不及格,否则判断下一个else if
    System.out.println("不及格,再接再厉");
  }else if (score < 90) { //如果分数<90为true,则输出及格,否则判断下一个else if
    System.out.println("及格,继续努力");
  }else if (score < 100) { //如果分数<100为true,则输出好成绩,否则跳过该语句块,执行下面的语句
    System.out.println("好成绩,继续保持");
  }
}

 

switch语句

        switch多选择结构:switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者是switch语句的末尾。如果表达式的值与任何case值不匹配,则进入default语句(如果存在default语句的情况),如果default不存在则跳过,执行下面的语句。

switch语句中case标签在JDK1.5之前必须是整数(long类型除外)或者枚举,不能是字符串,在JDK1.7之后允许使用字符串(String)。

当布尔表达式是多值判断,可以使用if多选择结构或者switch结构,值过多建议switch结构(更简洁);如果布尔表达式是区间判断,则只能使用if多选择结构。

// switch语句结构
switch (表达式){
  case 值1:{
    语句序列;
    [break]; //可选,执行到这里结束switch
  }
  case 值2:case 值3:{ //匹配到值2或3都会执行该语句块内的语句
    语句序列;
    [break];
  }
  default:{
    语句序列;
    [break];
  }
}
  
// 例子
public static void main(String[] args) {
  int month = (int)(1+12*Math.random()); //1-12的随机数代表月份
  System.out.println("输出的月份:" + month);
  // 由case开始,到break结束
  switch(month) { //switch判断month
    case 1:{ //如果month为1,则输出一月份
      System.out.println("当前月份:" + "一月份");
      break; //执行到这里结束
    }
    case 2:case 3:{
      System.out.println("当前月份:" + "二到三月份");
      break;
    }
    case 4:case 5:{
      System.out.println("当前月份:" + "四到五月份");
      break;	
    }
    case 6:case 7:{
      System.out.println("当前月份:" + "六到七月份");	
      break;
    }
    default:{ //如果以上case没有符合的值,则输出default内的语句块
      System.out.println("当前月份:" + "其他月份");	
      break;
    }
  }
}

 

 


↓ 点击翻页 ↓

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

分享