javaAPI(五):System、Math、BigInteger、BigDecimal

System类

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。
由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员,所以也可以很方便的进行调用。变量和成员方法都是static的。

成员变量

System类内部包含in、out和err三个成员变量,分别代表标准输入流(键盘输入),标准输出流(显示器)和标准错误输出流(显示器)。

成员方法

native long currentTimeMillis():返回时间戳(距1970年1月1日0时0分0秒的毫秒数)
void exit(int status):退出程序,status指为0代表正常退出,非零代表异常退出。
void gc():请求系统进行垃圾回收。至于系统是否回收,取决于垃圾回收算法的实现和系统执行情况。
String getProperty(String key):获得系统中属性名为key的属性对应的值。
系统中常见属性名如下:
javaAPI(五):System、Math、BigInteger、BigDecimal_第1张图片

Math类

java.lang.Math提供了一系列静态方法用于科学计算。其方法的参数和返回值类型一般为double类型。
常用静态方法如图所示:
javaAPI(五):System、Math、BigInteger、BigDecimal_第2张图片

BigInteger、BigDecimal

BigInteger

Interger 类作为int的包装类,能存储的最大整型值为231-1,Long类也是有限的,最大为263-1。如果要表示再大的整数,不管是基本数据类型还是他们的包装类都无能为力,更不用说进行运算了。
java.math包的BigInteger可以表示不可变的任意精度的整数。BigInteger提供所有java的基本整数操作符的对应物,并提供java.lang.Math的所有相关方法。另外,BigInteger还提供以下运算:模算数、GCD计算、质数测试、素数生成、位操作以及一些其他操作。

构造器

BigInteger(String val):根据字符串构建BigInteger对象。

BigInteger bi = new BigInteger("1321323132322132331132132123132");
        System.out.println(bi);//1321323132322132331132132123132

方法
javaAPI(五):System、Math、BigInteger、BigDecimal_第3张图片

BigDecimal类

一般的Float类和Double类可以用来做科学计算或者工程计算,但在商业计算中,要求数字精度比较高,故用到java.math.BigDecimal类。
BigDecimal类支持不可变的、任意精度的有符号十进制定点数。

构造器

public BigDecimal(double val)
public BigDecimal(String val)

常用方法

add:加
subtract:减
multiply:乘
divide:除

BigDecimal bd = new BigDecimal("1212.1213");
        BigDecimal bd2 = new BigDecimal("22.22");
        System.out.println(bd.divide(bd2,BigDecimal.ROUND_CEILING));//54.5510
        System.out.println(bd.divide(bd2,15,BigDecimal.ROUND_CEILING));//54.550913591359136

你可能感兴趣的:(java)