Java--Math类和Random类
发布时间
阅读量:
阅读量
1.Math类简介
- Math类中包含大量专门用于执行数学运算的方法。
- 该类通过final修饰成为终结类,并且无法实现子类。
- 该类中的所有方法都被static修饰为静态方法,并可通过class_name.method_name的方式直接调用。
2.Math常用方法
- abs(int):计算绝对值(int、long、float 和 double 类型可作为输入)
- ceil(double):进行向上取整(给定一个 double 类型的数值,并返回其向上取整后的 double 值)
- floor(double):进行向下取整(给定一个 double 类型的数值,并返回其向下取整后的 double 值)
- max(int, int):计算两个数中的较大者(仅限于 int 类型输入)
- min(int, int):计算两个数中的较小者(仅限于 int 类型输入)
- random():生成一个位于 0 到 1 之间的随机浮点数
- round(float|double):采用四舍五入法得到最接近的整数值(返回 int 或 long 类型)
- sqrt(double):计算平方根(若输入为负则返回 NaN)
- pow(double, double):进行幂运算(即计算指定指数的幂结果)
- sin(double)/cos(double)/tan(double):分别计算正弦、余弦和正切函数的结果
看看案例
public class Test {
public static void main(String[] args) {
System.out.println(Math.abs(5));
double ceil = Math.ceil(-3.5);
System.out.println(ceil);
double floor = Math.floor(-3.5);
System.out.println("floor = " + floor);
int max = Math.max(12, 5);
System.out.println("max = " + max);
int min = Math.min(12, 5);
System.out.println("min = " + min);
double d=3.5415;
long round = Math.round(d);
System.out.println(round);
int x=-2;
double sqrt = Math.sqrt(x);
System.out.println(sqrt);
//Not a Number
double pow = Math.pow(5, 3);
System.out.println("pow = " + pow);
}
}
运行结果

3.Random类
3.1Random简介
ava.util模块中包含一个名为Random的类。该类基于起始数字(即种子值)启动一系列迭代运算以生成随机数值。尽管这些生成的数值看似随机分布,在特定种子值和迭代次数下将得到完全一致的结果(即所谓的伪随机数)。
3.2Random构造方法
基于系统自身时间的种子类,可以生成具有特定时间戳的Random实例。当调用带有long参数的Random()时,可以根据需求自行指定特定的种子值来生成随机数实例。
3.3Random常用方法
return int类型的一个随机数值。
该方法用于生成指定下界(含)与上界(不含)之间的均匀分布整数值。
该函数返回一个长整型均匀分布在指定范围内的伪随机数值。
此方法会生成一个闭区间[0.0, 1.0]内的均匀分布单精度浮点值。
此函数会生成闭区间[0.0, 1.0]内均匀分布的双精度浮点数值。
此方法会生成结果为true或false的概率均等的伪随机布尔类型布尔值。
案例
public class Test {
public static void main(String[] args) {
Random random=new Random();
int i=random.nextInt();
System.out.println(i);
//伪随机数验证
Random random1=new Random(100);
Random random2=new Random(100);
int num=random.nextInt();
int num1=random1.nextInt();
System.out.println("num = " + num);
System.out.println("num1 = " + num1);
Random random3=new Random();
int i1=random.nextInt(2);//获取一个0(包含)到2(不包含)之间的数字
System.out.println(i);
long l = random.nextLong();
System.out.println("l = " + l);
float v = random.nextFloat();
double v1 = random.nextDouble();
float v2 = random.nextFloat();
System.out.println("v = " + v);
double v3 = random.nextGaussian();
boolean b = random.nextBoolean();
System.out.println(b);
}
}
运行结果

全部评论 (0)
还没有任何评论哟~
