package com.lei.duixiang;
import java.util.Random;
public class MathRondom {
/**
* 1. 随机数(产生,偶数,任何字符,各类型的随机数)
* @param args
*/
// 1.随机数(产生偶数)
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
}
}
// 2.随机数产生任何字符
public static char GetRandomChar(char cha1,char cha2){
return (char) (cha1 + Math.random()*(cha2 - cha1 +1));
}
//各类型的随机数
public static void random(){
Random r = new Random(); //实例化一个Random类
//随机产生一个整数
System.out.println("随机产生一个整数:"+r.nextInt());
//随机产生一个大于等于0小于10的整数
System.out.println("随机产生一个大于等于0小于10的整数:"+r.nextInt(10));
//随机产生一个 布尔型的值
System.out.println("随机产生一个 布尔型的值:"+r.nextBoolean());
//随机产生一个 双精度型的值
System.out.println("随机产生一个 双精度型的值:"+r.nextDouble());
//随机产生一个 浮点型的值
System.out.println("随机产生一个 浮点型的值:"+r.nextFloat());
//随机产生一个 概率速度为高斯分布的双精度型值
System.out.println("随机产生一个 概率速度为高斯分布的双精度型值"+r.nextGaussian());
}
public static void main(String[] args) {
//1.调用产生随机偶数的方法
System.out.println("任意一个 2~32 之间的偶数:" + GetEvenNum(2, 32));
// 2.随机数产生任何字符
//获取 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'));
System.out.println("------------");
random();
}
}