JAVA API--Math类和Random类_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1805 | 回复: 0   主题: JAVA API--Math类和Random类        下一篇 
feng.hu
注册用户
等级:中尉
经验:478
发帖:9
精华:0
注册:1970-1-1
状态:离线
发送短消息息给feng.hu 加好友    发送短消息息给feng.hu 发消息
发表于: IP:您无权察看 2016-8-10 19:07:43 | [全部帖] [楼主帖] 楼主

Math类:

  java.lang包中的Math类也称数学类,是一个工具类。其中包含了许多用来进行科学计算的类方法,涉及大多数学函数,这些方法可以通过类名直接调用。此外还提供了两个静态数学常量Math.PIMath.E,分别代表:EPI

下面是常用的一些方法:

int absint i)         求整数的绝对值(另有针对longfloatdouble的方法)

double ceildouble  d)  求小于d的最小整数

double floordouble d)  不大于d的最小整数

int maxint i1,int i2)   求两个整数中的最大整数(另有针对longfloatdouble的方法)

int minint i1,int i2)   求两个整数中的最小整数(另有针对longfloatdouble的方法)

double random()     产生0~1之间的随机数

int roundfloat f)     求最靠近f的整数

double sqrtdouble a)  求平方根

Random类:

        Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。

相同种子数的Random对象,相同次数生成的随机数字是完全相同的。也就是说,两个种子数相同的Random对象,第一次生成的随机数字完全相同,第二次生成的随机数字也完全相同。这点在生成多个随机数字时需要特别注意。

下面介绍一下Random类的使用,以及如何生成指定区间的随机数组以及实现程序中要求的几率。

1Random类包含两个构造方法,下面依次进行介绍:

     apublic Random()          该构造方法使用一个和当前系统时间对应的相对时间有关的数字作为种子数,然后使用这个种子数构造Random对象。

     bpublic Random(long seed)  该构造方法可以通过制定一个种子数进行创建。

示例代码:

    Random r = new Random();

    Random r1 = new Random(10);

再次强调:种子数只是随机算法的起源数字,和生成的随机数字的区间无关。

2、方法:

apublic boolean nextBoolean()

    该方法的作用是生成一个随机的boolean值,生成truefalse的值几率相等,也就是都是50%的几率。

bpublic double nextDouble()

    该方法的作用是生成一个随机的double值,数值介于[0,1.0)之间。

cpublic int nextInt()

    该方法的作用是生成一个随机的int值,该值介于int的区间,也就是-231231-1之间。

dpublic int nextInt(int n)

    该方法的作用是生成一个随机的int值,该值介于[0,n)的区间,也就是0n之间的随机int值,包含0而不包含n

epublic void setSeed(long seed)

    该方法的作用是重新设置Random对象中的种子数。设置完种子数以后的Random对象和相同种子数使用new关键字创建出的Random对象相同。





赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论