java中的常用类及常用方法
math类的常用方法
方法名 | 说明 |
---|---|
public static int abs(int a) | 获取参数绝对值 |
public static double ceil(double a) | 向上取整 |
public static double flcor(double a) | 向下取整 |
public static int round(float a) | 四舍五入 |
public static int max(int a, int b) | 获取两个int值中的较大值 |
public static double pow(double a,double b) | 返回a的b次幂的值 |
public static double random() | 返回值为double的随机值范围[0.0,1.0] |
system 工具类,提供了一些与系统相关的方法
public static void exit(int status) 终止当前运行的虚拟机
public static long curretimeMillis() 返回当前系统时间毫秒值
-
arraycopy(数据源数组,起始索引,目的地索引,起始索引,拷贝个数);
参数:
-
数据源,要拷贝的数组从那个数组而来
-
从数据源数组的第几个索引开始拷贝
-
目的地,我要把数据拷贝到那个数组中
-
目的地数组的索引
-
拷贝的个数
细节:
-
如果数据源数组和目的地数组都是基本数据类型,两者必须一致
-
在拷贝的时候要考虑数组长度,超出范围会报错
-
如果数据源数组和目的地数组都是引用数据类型,那么子类可以赋给父类类型
Runtime
调用方式:Runtime.getRuntime();
方法名 | 说明 |
---|---|
public static Runtime getRuntime() | 当前系统的运行环境对象 |
public void exit (int status) | 停止虚拟机 |
public availableprocessors() | 获得cpu的线程总数 |
public long maxMemory() | JVM能从系统中获取总内存大小(单位byte) |
public long totalMemory() | JVM已经从系统中获取总内存大小(单位byte) |
public long freeMemory() | JVM剩余内存大小(单位byte) |
process exec(String command) | 运行cmd命令 |
toString方法的总结
如果我们打印一个对象,想看到属性值的话,那么就重写toString方法,在重写的方法中,把对象的属性值进行拼接
对象克隆
默认浅克隆
如果需要深克隆 需要重写方法或者使用第三方工具类
-
重写Object中的clone方法
-
让javabean类实现cloneable接口
-
创建原对象并调用clone就可以了
浅克隆:不管对象内部的属性是基本数据类型还是引用数据类型,都会完全拷贝过来
深克隆
-
基本数据类型会拷贝过来
-
字符串复用
-
引用数据类型会重新创建新的
Objects 对象工具类
方法名 | 说明 |
---|---|
public static booleon equals(Object a,Object b) | 先做非空判断,比较两个对象 |
public static booleon isNull(Object obj) | 判断是否为null,为null返回true |
public static booleon nonNull(Object obj) | 判断是否为null,跟isNull结果相反 |
Biglnteger
-
如果Biglnteger表示的数字没有超过long的范围,可以用静态方法获取
-
如果Biglnteger表示的超出long的范围,可以用构造方法获取
-
对象一旦创建,Biglnteger内部记录的值不能改变
-
只要进行计算都会产生一个新的Biglnteger对象
方法名 | 说明 |
---|---|
public Biglnteger(int num,Random rnd) | |
public Biglnteger(String val) | 获取指定的大整数 |
public Biglnteger(String val,int radix) | 获取指定进制的大整数 |
public Biglnteger valueof(long val) | 静态方法获取Biglnteger的对象,内部有优化 |
public Biglnteger add(Biglnteger val) | 加法 |
public Biglnteger subtract(Biglnteger val) | 减法 |
public Biglnteger multiply(Biglnteger val) | 乘法 |
public Biglnteger divide(Biglnteger val) | 除法,获取商 |
public Biglnteger [] divdeAndRemainder(Biglnteger val) | 除法,获取商和余数 |
public boolean equals(Object x) | 比较是否相同 |
public Biglnteger pow(int exponent) | 次幂 |
public biglnteger max/min(Biglnteger val) | 返回较大/小值 |
public int intValue(Biglnteger val) | 转为int类型整数超出范围有误 |
注意:
-
Biglnteger表示一个大整数
-
如何获取Biglnteger的对象
Biglnteger bl =Biglnteger.valueof(0.1)
Biglnteger bl=new Biglnteger("整数")
-
常见操作:
-
加:add
-
减:subtract
-
乘:multiply
-
除:divide,divideAndRemainder
-
比较:equals,max,min
-
次幂:pow
-
转成整数:intValue,longValue
BigDecima用于小数的精确运算
方法名 | 说明 |
---|---|
public static BigDecimal Valueof(double val) | 获取对象 |
public static BigDecimal add(BigDecimal val) | 加法 |
public static BigDecimal subtract(BigDecimal val) | 减法 |
public static BigDecimal multiply(BigDecimal val) | 乘法 |
public static BigDecimal divide(BigDecimal val) | 除法 |
public static BigDecimal divide(BigDecimal val,精确几位,舍入模式) |