1、math类
math类中包含一些基本的数学运算的方法,如初等指数、对数、平方根和三角函数。
* public static int abs(int a) //绝对值
* public static double ceil(double a) //向上取整
* public static double floor(double a) //向下取整
* public static int max(int a,int b) //两个数的最大值(这里是a,b)
* public static double pow(double a,double b) //指数运算,a的b次幂
* public static double random() //随机数,0.0-1.0之间的数,包括0.0,不包括1.0
* public static int round(float a) //四舍五入
* public static double sqrt(double a) //求根号,开方
2、random类
具体参照上面文档。举例说明:
Random r = new Random();
int x = r.nextInt(); //生成随机的int数
上面提到math类的时候用的是nextDouble(),因此返回的是0.0-1.0之间的数。
主要用法,生成一个100以内的随机数:
Random r = new Random();
int x = r.nextInt(100);
3、BigInteger类
这个类主要是存放一个很大的整数,有多大,超出long整数的范围。
用法:
BigInteger bi1 = new BigInteger("100"); //参数为字符串
四个方法:分别为(+、-、*、/)
* public BigInteger add(BigInteger val)
* public BigInteger subtract(BigInteger val)
* public BigInteger multiply(BigInteger val)
* public BigInteger divide(BigInteger val)
下面的这个方法返回值是一个数组,数组中第一个数为除数,另一个为余数
* public BigInteger[] divideAndRemainder(BigInteger val)
System.out.println(bi1.add(bi2)); //用法
4、BigDecimal类
这个类主要是使java中浮点数的运算更精确。
例如:System.out.println(2.0-1.0);
运行后结果竟然不为0.9。为0.8999999999
原因:计算机中表示小数使用二进制表示的,不能准确表示,这就像用十进制表示1/3一样,不能找到一个正好的值,因此会有误差。
使用方法:
BigDecimal bd1= new BigDecimal("2.0"); //参数为字符串
BigDecimal bd1= new BigDecimal("1.1");
BigDecimal类中的方法:(+、-、*、/)
* public BigDecimal add(BigDecimal augend)
* public BigDecimal subtract(BigDecimal subtrahend)
* public BigDecimal multiply(BigDecimal multiplicand)
* public BigDecimal divide(BigDecimal divisor)
5、Date类
Date类为时间类
主要用法:
1)、
Date d1 = new Date();
System.out.println(d1);
结果:系统当前时间
2)、
Date d1 = new Date(0);
System.out.println(d1);
结果:1970年1月1日 08:00,原因:这个时间为计算机的初始化时间,有关历史不在多说。应该为00:00,为什么是08:00呢,原因我们处在东8区,因此为08:00
3)、
Date d1 = new Date();
System.out.println(d1.getTime()); //获取系统当天的毫秒数
System.out.println(System.currentTimeMillis()); //同上,只是currentTimeMillis方法为System类中的静态方法。
6、SimpleDateFormat类
SimpleDateFormat类主要是能将时间按照自己的要求显示,也就是格式化
用法:
Date d1 = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
System.out.println(sdf.format(d1)
运行结果:2017/5/6 16:43