快捷搜索: 王者荣耀 脱发

面向对象(Math类产生随机数功能)

  在Math类中包含了众多数学函数方法,主要包括三角函数方法、指数函数方法、取整函数方法、取最大值、最小值以及平均值函数方法,这些类都被定义为static形式,所以在程序中应用比较简便。可以使用如下形式调用:   Math.数学方法

Math的特点:

  1. 由于Math类在java.lang包下,所以不需要导包。
  2. 没有构造方法,因为它的成员全部是静态的。

随机数

  我们可以调用Math类中的random()方法来产生随机数。这个方法默认生成大于等于0.0且小于1.0的double类型的随机数,虽然这个方法只能产生0~1之间的double型数字,但是只要在Math.random()语句上稍加处理,就可以得到任意范围的随机数。 案例说明:

public class GuessNumber {
          
   
    public static void main(String[] args) {
          
   

        int num = (int) (Math.random() * 100 + 1);
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个整数,范围 1---100 包含1和100");
        int b = 10;
        while (b > 0) {
          
   
            b--;
            int userNum = sc.nextInt();
            if (userNum > num) {
          
   
                System.out.println("猜大了,您还剩" + b + "次机会。");

            } else if (userNum < num) {
          
   
                System.out.println("猜小了,您还剩" + b + "次机会。");

            } else if (userNum == num) {
          
   
                System.out.println("恭喜你!猜对了");
                break;
            }
        }
    }
}

  上面的代码实现的功能是随机输入一个数字判断是否与生成的数字一样,如果一样则显示“恭喜你!猜对了”,否者显示你猜大或者猜小,并提示您还有几次机会。一共有10次机会,当次数用完时游戏也结束。

int num = (int) (Math.random() * 100 + 1);

  通过这段代码把0~1的范围改成了1~100的范围,所以只要稍加改动就可以得到我们想要的任何范围。如果想要把次数变成无线次,只需要把while中的条件改为true即可。

经验分享 程序员 微信小程序 职场和发展