Java中的数字处理类Math.random()⽅法
**
Math.random()⽅法
**
在Java中主要提供了两种⽅式产⽣随机数,分别为调⽤ Math类的 random()⽅法 和 Random类提供的产⽣各种数据类型随机数的⽅法。Math.random()⽅法:
在Math类中存在⼀个random()⽅法,⽤于产⽣随机数字,这个⽅法默认⽣成⼤于等于
0.0 且⼩于 1.0 的double型随机数;即 0 <= Math.random() < 1.0 ,虽然Math.random()
⽅法只可以产⽣0 ~ 1之间的double型数字,其实只要在Math.random()语句上稍加处理,
就可以产⽣任意范围的随机数。
(int)(Math.Random() * n )    →返回⼤于等于0且⼩于n的随机数
m + (int)(Math.Random() * n )  →返回⼤于等于m且⼩于m+n(不包括m+n)的随机数
public class MathRondom {
/*
* 定义产⽣偶数的⽅法
*
* @param num1 起始范围参数
*
* @param num2 终⽌范围参数
*
* @return 随机的范围内偶数
*/
public static int GetEvenNum(double num1,double num2){
/
/产⽣num1 - num2 之间的随机数
int s =(int) num1 +(int)(Math.random()*(num2 - num1));
if(s %2==0){//判断随机数是否为偶数
return s;//返回
}else
//如果是奇数
return s +1;//将结果加1后返回
}
public static void main(String[] args){
// TODO ⾃动⽣成的⽅法存根
//调⽤产⽣随机数⽅法
System.out.println("任意⼀个2-32之间的偶数: "+GetEvenNum(2,32));
}
}
使⽤Math类的random()⽅法也可以随机⽣成字符,可以使⽤如下代码⽣成a ~ z 之间的字符。
(char)('a' + Math.random() * ('z' - 'a' + 1));
上述表达式可以求出更多的随机字符,如A ~ Z之间的随机字符,进⽽推理出求任意字符
之间的随机字符,可以使⽤下列语句表⽰。
(char)(char1 + Math.random() * (cha2 - cha1 + 1));
代码如下:
public class MathRandomChar {
//定义获取任意字符之间的随机字符
public static char GetRandomChar(char cha1,char cha2){
return(char)(cha1 +  Math.random()*(cha2 - cha1 +1));
}java生成随机数的方法
public static void main(String[] args){
// TODO ⾃动⽣成的⽅法存根
//获取a - z 之间的随机字符
System.out.println("任意⼩写字符 "+GetRandomChar('a','z'));
//获取A-Z之间的随机字符
System.out.println("任意⼤写字符 "+GetRandomChar('A','Z'));
//获取 0 - 9之间的随机字符
System.out.println("0 到 9任意数字字符 "+GetRandomChar('0','9')); }
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。