对Random的简单认识

 Random类在java.util.*包下,其构造方法有两种,分别是:Random()和Random(long seed)。如果使用Random()来创建类,则每次执行程序其随机产生数都会改变,而是用Random(long seed)来创建随机类,每次执行程序其随机产生数保持不变。

另外,在Random类中,方法nextInt()会返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。而方法nextInt(int i)也会返回一个伪随机数,但它是从此随机数生成器的序列中取出的、在 0(包括)和指定值(不包括)之间均匀分布的 int值。

 

举例说明如下:

 

import java.util.Random;

public class UsingStringBuilder {
 public static Random random=new Random(47);
 public String toString(){
  StringBuilder result=new StringBuilder("[");
  for(int i=0;i<25;i++){
   result.append(random.nextInt(100));
   result.append(", ");
  }
  result.delete(result.length()-2, result.length());
  result.append("]");
  return result.toString();
 }
 public static void main(String[] args) {
  UsingStringBuilder usb=new UsingStringBuilder();
  System.out.println(usb);
 }
}

 

 执行上面的程序,显示结果为:[58, 55, 93, 61, 61, 29, 68, 0, 22, 7, 88, 28, 51, 89, 9, 78, 98, 61, 20, 58, 16, 40, 11, 22, 4]

多次执行仍是上面的结果。但是如果把第三行的new Random(47)改为new Random(),则每次产生的结果不同。

 

     如果将第七行中的random.nextInt(100)改为random.nextInt(),则会产生类似于下面的一行数:[-1172028779, 1717241110, -2014573909, 229403722, 688081923, -1812486437, 809509736, 1791060401, -2076178252, -1128074882, 1150476577, -210207040, 1122537102, 491149179, 218473618, -1946952740, -843035300, 865149722, -1021916256, -1916708780, -2016789463, 674708281, -2020372274, 1703464645, 2092435409]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值