java Math数学工具及Random随机函数

Math类包含用于执行基本数学运算的方法,如绝对值、对数、平方根和三角函数。它是一个final类,其中定义的都是一些常量和静
态方法。常用方法如下:
public static double sqrt(double a) //求平方根
public static double ceil(double a) //求比a大的第一个整数
public static double floor(double a) //求比a小的第一个整数
public static double pow(double a,double b) //求指数,a为底数,b为指数
puiblic static long round(double a) //四舍五入
public staic int round(float a) //四舍五入
public static double random() //产生0~1的随机数

java三种产生随机数的方法:
1.通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字
2.通过Math.random()返回一个0到1的随机double值
3.通过Random类来产生一个随机数,这是专业的Random工具类,功能强大
Random类中实现的随机算法是伪随机,即有规则的随机。有一个起源种子数(seed),相同种子的Random对象,相同次数生成

的随机数一样
构造方法:
1.public Random()
2.public Random(long seed)

常用方法
public void nextBytes(byte[] bytes)
public int nextInt()
public int nextInt(5) //[0,5)的整数,永远取不到5
public int nextBoolean() //布尔值
public int nextFloat() //0-1浮点数
public int nextDouble() //0-1 double类型浮点数

Math类包含用于执行基本数学运算的方法,如绝对值、对数、平方根和三角函数。它是一个final类,其中定义的都是一些常量和静
态方法。常用方法如下:
public static double sqrt(double a) //求平方根
public static double ceil(double a) //求比a大的第一个整数
public static double floor(double a) //求比a小的第一个整数
public static double pow(double a,double b) //求指数,a为底数,b为指数
puiblic static long round(double a) //四舍五入
public staic int round(float a) //四舍五入
public static double random() //产生0~1的随机数

java三种产生随机数的方法:
1.通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字
2.通过Math.random()返回一个0到1的随机double值
3.通过Random类来产生一个随机数,这是专业的Random工具类,功能强大
Random类中实现的随机算法是伪随机,即有规则的随机。有一个起源种子数(seed),相同种子的Random对象,相同次数生成

的随机数一样
构造方法:
1.public Random()
2.public Random(long seed)

常用方法
public void nextBytes(byte[] bytes)
public int nextInt()
public int nextInt(5) //[0,5)的整数,永远取不到5
public int nextBoolean() //布尔值
public int nextFloat() //0-1浮点数
public int nextDouble() //0-1 double类型浮点数

import java.util.Random;

public class MathRandomDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println(Math.floor(10.55));   //比它小的第一个整数
        System.out.println(Math.ceil(10.55));   //比它大的第一个整数
        System.out.println(Math.pow(2,3));   //求指数2的3次方
        System.out.println(Math.round(10.6));   //四舍五入
        System.out.println(Math.sqrt(64));   //比它小的第一个整数
        System.out.println(Math.random());

        Random random1 = new Random();
        System.out.println(random1.nextInt());

        Random random2 = new Random(10);//随机数不变
        System.out.println(random2.nextInt());

        Random random3 = new Random(System.currentTimeMillis());//将数字设为时间的毫秒数,则在不断变化
        System.out.println(random3.nextInt());
        System.out.println(random3.nextInt(5)); //随机生成[0,5),取不到 5
        System.out.println(random3.nextBoolean());
        System.out.println(random3.nextDouble());//双精度
        System.out.println(random3.nextFloat());//单精度

    }

}

原文地址:https://www.cnblogs.com/liubing2018/p/8490305.html

时间: 2024-10-24 12:24:50

java Math数学工具及Random随机函数的相关文章

java.math.BigDecimal保留两位小数,保留小数,精确位数

http://blog.csdn.net/yuhua3272004/article/details/3075436 使用java.math.BigDecimal工具类实现 java保留两位小数问题: 方式一(四舍五入形式保留两位小数,注意模式ROUND_HALF_UP): 四舍五入   double   f   =   111231.5585;   BigDecimal   b   =   new   BigDecimal(f);   double   f1   =   b.setScale(2

5_Math数学工具类的使用

Math 数学工具类的使用 1. abs(num) : 获取绝对值 // 获取绝对值 System.out.println(Math.abs(3.14)); // 3.14 System.out.println(Math.abs(-2.4)); // 2.4 2. ceil(num) : 向上取整 // 向上取整 System.out.println(Math.ceil(2.1)); // 3.0 3. floor(num) : 向下取整 // 向下取整 System.out.println(M

Java 常用类库 之 Math 数学运算类

http://www.verejava.com/?id=16993076554196 /** 知识点: Math 数学运算类 */ public class TestMath { public static void main(String[] args) { //取绝对值 System.out.println(Math.abs(-2)); //取大于小数的最小整数 System.out.println(Math.ceil(1.6)); System.out.println(Math.ceil(

JAVA 常用的工具类总结

一.StringUtils类 import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.util.HashMap; import java.util.Map; import java.util.Set; import java.util.TreeSet; import net.sf.json.JSONObject; import sun.misc.BASE64Decoder; /**

java.math.BigDecimal类的用法

在java中提供了大数字的操作类,即java.math.BinInteger类和java.math.BigDecimal类.这两个类用于高精度计 算,其中BigInteger类是针对大整数的处理类,而BigDecimal类则是针对大小数的处理类.下边我们介绍BigDecimal类: BigDecimal的实现利用到了BigInteger,不同的是BigDecimal加入了小数的概念.一般的float型和Double型数据只可 以用来做科学计算或者是工程计算,由于在商业计算中,要求的数字精度比较高

28个Java常用的工具类

源码下载:http://pan.baidu.com/s/1pJLSczD Base64.javaBase64DecodingException.javaCConst.javaCharTools.javaConfigHelper.javaCounter.javaCTool.javaDateHandler.javaDateUtil.javaDealString.javaDebugOut.javaDom4jHelper.javaEscape.javaExecHelper.javaFileHelper.

Math 数学类

/* Math 数学类, 主要是提供了很多的数学公式. abs(double a) 获取绝对值 ceil(double a) 向上取整 floor(double a) 向下取整 round(float a) 四舍五入 random() 产生一个随机数. 大于等于 0.0 且小于 1.0 的伪随机 double 值 */ public class Demo4 { public static void main(String[] args) { System.out.println("绝对值:&qu

JS之路——Math数学对象

Math数学对象 ceil(数值)大于或等于该数的最小整数 floor(数值)小于或等于该数的最大整数 min(数值1,数值2)返回最小值 max(数值1,数值2)返回最大值 pow(数值1,数值2)返回数值1的数值2次方 random()返回随机数[0,1) round(数值)四舍五入 sqrt(数值)开平方根

常用的Java字符转换工具类

该类里包含了Java中常用的字符串处理方法,如日期处理.金额转换... ----------------------------------------------------------------------------------------- import java.math.BigDecimal;import java.sql.Timestamp;import java.text.SimpleDateFormat;import java.util.Calendar;import jav