欢迎光临散文网 会员登陆 & 注册

150天打卡day05_随机数的学习

2021-03-01 17:28 作者:关阿姨的Java日记  | 我要投稿

本节内容

  • 什么是随机数?

  • 随机数的用途

  • 随机数的使用

  • 随机数案例_大球吃小球

随机数

今天要学的随机数,在生活过程中很常见,例如丢硬币,掷筛子等等,生活中的随机真的是随机,但是计算机中的随机并不是真的随机,计算机专家通过算法实现写了一个随机数发生器,就是用固定的套路写的,其实就是利用随机数发生器提供的也是伪随机数,有同学想了解伪随机数请参考注解内容

随机数的用途

随机数有着广泛的用途,比如:测试,游戏,仿真以及安全领域都需要用到随机数,

最常见的是在用户登录或者注册的时候通常需要我们去输入一些验证码

他主要的作用是为了防止有人频繁的注册而造成一些恶意的破坏

所以呢验证码一般都是拿随机数去生成的。

另外我们公司在进行抽奖的时候,往往也会通过随机数来实现,


如何使用随机数

在Java中  实现随机数其实是比较简单的,因为已经有现成的工具以及类了,

通常我们有两种方法:

  • 一种是通过Math.random()方法来随机生成0~1之间的一个小数

  • 还有一种是通过Random这个类,他是一个专门的API工具,可以帮助我们生成随机数,他的功能会更加强大一些

Math类

Java 中的 +、-、*、/ 和 % 等基本算术运算符不能进行更复杂的数学运算,例如,三角函数、对数运算、指数运算等。于是 Java 提供了 Math 工具类来完成这些复杂的运算。

在 Java 中 Math 类封装了常用的数学运算,提供了基本的数学操作,如指数、对数、平方根和三角函数等

Math 类位于 java.lang 包,并且 Math 类中的所有方法都是类方法,可以直接通过类名来调用它们。

常见的使用

1.常量PI是π、E自然对数

2.函数sin(),cos()

3.生成随机数的random()方法

Math.random方法

其实在Math类中也有一个random方法,该random方法的工作是生成一个[0,1)区间的随机小数。(0到1之间不包含1的小数)

通过阅读Math类的源代码可以发现,Math类中的random方法就是直接调用Random类中的nextDouble方法实现的。

只是random方法的调用比较简单,所以很多程序员都习惯使用Math类的random方法来生成随机数字。

Java的Math类提供了random()用于产生随机数,返回值是一个0-1之间的随机小数。[0,1)

由于日常中生成整数会比较多,所以经常得需要进行强转,而且如果要算某个范围内的随机数,有个规律,随机数乘以(最大值-最小值)+最小值

案例

生成 [1,10) 随机整数,注意类型之间的转换

练习:

Random类

其实任何逻辑都可以忘记,只需要记住咱们的公式就可以了如果还嫌弃麻烦,其实Java的API中还提供了一个类,这个类就是Random类是JavaUtil包中的一个随机数类,里面封装了大量的方法,他的作用就是帮助我们去生成一系列的随机数,其中有一个较为常见的方法,叫做nextInt()方法,看字面上的意思就是下一个整数的意思,他是帮助我们生成一个随机的整数,这俩没有谁好谁坏,看自己哪个用的比较顺手就用哪个就可以,使用这个类和学习Scanner类似,咱们先来看一下使用的步骤是什么。

  • 导入Random API: import java.util.Random;

  • 创建Random对象:Random random = new Random();

  • 调用random的方法获得随机数:

Random类案例

练习:生成[10,100)之间的随机数

所以得出公式:

点赞关注不迷路~笔芯❤


150天打卡day05_随机数的学习的评论 (共 条)

分享到微博请遵守国家法律