Java 基础(获取随机数, switch-case 结构)

获取一个整型随机数: 10-99

公式: [a,b] -> (int)(Math.random() * (b - a + 1) +a)

class RandomInt {
    public static void main(String[] args){
        int value = (int)(Math.random() * 90 + 10);
        System.out.println(value);
    }
}

程序流控制流程:switch-case 结构

  1. 根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到 break 关键字或此 switch-case结构末尾为止结束。
  2. break, 可以使用在 switch-case 结构中,表示一旦执行到此关键字,就跳出 switch-case 结构。
  3. switch 结构中的表达式,只能是如下的6种数据类型之一: byte, sort, char, int, 枚举类型(JDK5.0新增),String类型(JDK7.0新增)。
  4. case 之后只能声明常量,不能声明范围。
  5. break 关键字是可选的。
  6. default: 相当于 if-else 结构中的 else,defalut 结构是可选的。而且位置是灵活的。
  7. 凡是可以使用 switch-case 的结构,都可以转换为 if-else,反之,不成立。
  8. 编写代码时,发现既可以使用 switch-case 又可以使用 if-else 时,优先使用 switch-case, 原因:switch-case 执行效率稍高。
switch(表达式){
case 常量1:
     语句1:
     // break;
case 常量2:
     语句2:
     // break;
......
case 常量N:
     语句N:
     // break;
default:
     语句:
     // break;
}
class SwitchCaseTest {
    public static void main(String[] args){
        int number = 2;
        switch(number){
            case 0:
                System.out.println("zero");
                break;
            case 1:
                System.out.println("one");
                break;
            case 2:
                System.out.println("two");
                break;
            case 3:
                System.out.println("three");
                break;
            default:
                System.out.println("other");
        }
    }
}
class SwitchCaseTest2 {
    public static void main(String[] args){
        int score = 78;
        switch(score / 10){
            case 0:
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                System.out.println("不及格");
                break;
            case 6:
            case 7:
            case 8:
            case 9:
            case 10:
                System.out.println("及格");
                break;
        }
        
        // 更优的解决方案:
        switch(score / 60){
            case 0:
                System.out.println("不及格");
                break;
            case 1:
                System.out.println("及格");
                break;
        }
    
    }
}

 

posted @ 2021-11-29 11:13  民宿  阅读(98)  评论(0)    收藏  举报