随机数生成器功能:1,产生一个随机概率,.doc
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
随机数生成器功能:1,产生一个随机概率,
2产生一个a到b之间的随机整数
3,产生一个指定长度的随机数组,里面存放随机的布尔值,表示染色体
package edu.zsu.zouang.util;//java.util中的Random使用指定的伪随机原随即更改指定列表的序列
import java.util.Random;//import导入,导入random类,用于产生伪随机数流
public class Randomizer
{
private int lower;
private int upper;
private static Random random = new Random();//生成random实例
public Randomizer(int lower, int upper){
if(upper <= lower){
throw new IllegalStateException("Upper is smaller than lower!");
}
this.lower = lower;
this.upper = upper;
}
public Double nextDouble(){//返回概率
return Double. (upper - lower) * random.nextDouble());
}//Random中double nextDouble()返回下一个伪随机数,它是从伪随机数生成器的序列中取出的在0.0到1.0之间的double值
//double.valueof(str)说明把str转化成double类型的对象,相当于强制转换
public Integer nextInteger(){//返回整数lower到upper之间
return Integer.valueOf(lower +random.nextInt(upper - lower));
}//Random(int)返回0到int之间的整数随机值
public char[] nextBitArray(int length){//生成指定长度的字符数组,存放基因系列
if(length <= 0){
throw new IllegalStateException("Length is less than ZERO!");
}
char[] temp = new char[length];
for(int i = 0; i < length ; i++){
temp[i] = random.nextBoolean() ? '1' : '0';
}//Random.nextBoolean()返回随机的bool值
return temp;
}
}