Java:常用API

Math

1.Math

(1)是一个帮助我们用于进行数学计算的工具类

(2)私有化构造方法,所有方法都是静态的

2.Math类常见方法

(1)public static int abs(int a):获得参数绝对值

(2)public static double ceil(double a):向上取整

(3)public static double floor(double a):向下取整

(4)public static int round(float a):四舍五入

(5)public static int max(int a,int b):获取两个int值中的较大值

(6)public static double pow(double a,double b):返回a的b次幂的值

(7)public static double sqrt(double a):返回a的平方根

(8)public static double cbrt(double a):返回a的立方根

(9)pubilc static double random():返回值为double的随机值,范围[0.0,1.0)

3.调用

  使用类名直接调用:Math.abs(-11);

System

1.System

System也是一个工具类,提供了一些与系统相关的方法

2.System常见的方法

(1)public static void exit(int status):终止当前运行的Java虚拟机

(2)public static long currentTimeMillis():从时间原点开始返回当前系统的运行时间毫秒值形式

(3)public static void arraycopy(数据源数组,起始索引,目的地数组,起始索引,拷贝个数): 拷贝数组

数据源数组:数据源,要拷贝的数组

起始索引(前):从数据源数组的中的第几个索引开始拷贝

目的地数组:要拷贝到的数组

起始索引(后):目的地数组的开始索引

拷贝个数:拷贝的个数

3.注意:

(1)如果数据源数组和目的地数组都是基本数据类型,那么两者类型必须保持一致,否则会报错

(2)在拷贝的时候需要考虑数组的长度,如果超出范围就会报错

(3)如果数据源数组和目的地数组都是引用数据类型,那么子类类型可以赋值给父类类型,要强制类型转换

4.调用

使用类名直接调用:System.exit(0);

Runtime

1.Runtime

  Runtime表示当前虚拟机的运行环境

2.Runtime常见的方法

(1)public static Runtime getRuntime():当前系统的运行环境对象

(2)public void exit(int status):停止虚拟机

(3)public int availableProcessors():获得CPU的线程数

(4)public long maxMemory():JVM能从系统中获取总内存大小(单位为byte)

(5)public long totalMemory():JVM已经从系统中获取总内存大小(单位为byte)

(6)public long freeMemory():JVM剩余内存大小(单位为byte)

(7)public Process exec(String comand):运行cmd命令

3.调用

(1)先获取Runtime实例:Runtime r1 =Runtime.getRuntime();

                                            r1.exit(0);

(2)先调用静态方法在调用里面的方法:Runtime.getRuntime.exit(0);

Object和Objects

1.Object

(1)Object

     1.Object是Java中的顶级父类,所有的类都直接或间接继承于Object类

     2.Object类中的方法可以被所有子类访问,所以我们要学习Object类和其中的方法

(2)Object的构造方法

       public Object():空参构造

(3)Object的成员方法

     1.pubilc String toString():返回对象的字符串表示形式

     2.public boolean equals(Object obj):比较两个对象是否相等

     3.protected Object clone(int a):对象克隆

(4)调用

使用对象名调用:Object obj=new object();

                             String str1 = obj.toString();

(5)注意

    1.当我们打印一个对象的时候,底层会调用对象的toString方法,把对象变成字符串,然后打印在控制台上

    2.字符串默认都是地址值,如果我们想打印一个对象属性值的话,那么就重写方法就可以了

(6)对象克隆

    1.对象克隆就是把A对象的属性值完全拷贝给B对象,也叫对象拷贝,对象复制

    2.细节

   (1)方法的底层会帮我们创建一个对象,并把原对象中的数据拷贝过去

   (2)书写细节:重写Object中的clone方法

                           让javabean类实现Cloneable接口

                           创建原对象并调用clone

    3.浅克隆:不管对象内部的属性是基本数据类型还是引用数据类型,都完全拷贝过来(Object中的克隆是浅克隆)

     4.深克隆:基本数据类型直接拷贝过来,字符串会复用串池里的数据,引用数据类型会重新创建新的

2.Objects

(1)Objects

      Objects是一个工具类,提供了一些方法去完成一些功能

(2)Objects的成员方法

       1.public static boolean equals(Object a, Object b):先做非空判断,比较两个对象

       2.public static boolean isNull(Object obj):判断对象是否为null,为null返回true,反之则返回false

       3.public static boolean nonNull(Object obj):判断对象是否为null,为null返回false,反之则返回true

(3)调用

使用类名调用:Objects.equals(s1,s2);

BigInteger和BigDecimal

1.BigInteger

(1)BigInteger

    BigIntegerb=表示一个大的整数

(2)BigInteger的构造方法

      1.public BigInteger(int num,Random rnd):获取随机大整数,范围为:[0~(2^num)-1]

      2.public BigInteger(String val):获取指定的大整数

      3.public BigInteger(String val,int radix):获取指定进制的大整数

(3)BigInteger的静态方法

      public static BigIneger valueOf(long val):静态方法获取BigInteger对象,内部有优化

(4)细节

      1.对象一旦创建,内部记录的值是不能发生改变的

      2.字符串中的数字必须是整数,字符串中的数字必须和进制数吻合

      3.静态方法获取能表示范围比较小,只能在long的取值范围之内,把-16~16进行了优化,它提前把-16~16先创建好BigInteger对象,如果多次获取不会创建新的

      4.只要计算都会产生一个新的BigInteger对象

      5.如果表示的数字不大,没有超出long的取值范围,建议使用静态方法

      6.如果表示的数字比较大,超出了long的取值范围,建议使用构造方法

(5)BigInteger中常见的方法

      1.public BigInteger add(BigInteger val):加法

      2.public BigInteger subtract(BigInteger val):减法

      3.public BigInteger multiply(BigInteger val):乘法

      4.public BigInteger divide(BigInteger val):除法,获取商

      5.public BigInteger[] divideAndRemainder(BigInteger val):除法,获取商和余数

      6.public boolean equals(Object x):比较是否相同

      7.public BigInteger pow(int exponent):次幂

      8.public BigInteger max/min(BigInteger val):返回较大值/较小值

      9.public int intValue(BigInteger val):转为int类型整数,超出范围数据有误

2.BigDecimal

(1)BigDecimal

     BigDecimal用于小数的精确计算,用来表示很大的小数

(2)BigDecimal的构造方法

     1.public BigDecimal(double val):通过传递double类型的小数创建对象,结果可能不精确

     2.public BigDecimal(String val):通过字符串表示的小数来创建对象,数据精确

(3)BigDecimal的静态方法

      public static BigDecimal valueOf(double val):静态方法获取对象

(4)细节

     1.如果表示的数字不大,没有超出double的取值范围,建议使用静态方法

     2.如果表示的数字比较大,超出了double的取值范围,建议使用构造方法

     3.如果传递的数据是0~10的整数,那么方法会返回已经创建好的对象,不会重新创建

(5)BigDecimal中常见的方法

     1.public BigDecimal add(BigDecimal val):加法

     2.public BigDecimal subtract(BigDecimal val):减法

     3.public BigDecimal multiply(BigDecimal val):乘法

     4.public BigDecimal divide (BigDecimal val):除法

     5.public BigDecimal divide(BigDecimal val,精确几位,舍人模式):除法

说明:舍入模式使用RoundingMode调用

(1)UP:远离零方向舍入

(2)DOWN:向零方向舍入

(3)CEILING:向正无限大方向舍入

(4)FLOOR:向负无限大方向舍入

(5)HALF_UP:四舍五入,当两边距离相等向上舍入

(6)HALF_DOWN:四舍五入,当两边距离相等向下舍入

(7)HALF_EVEN:四舍五入,当两边距离相等向相邻的偶数舍入

           

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值