Java常用类库 读书笔记 一

1.String Buffer 类

String 类所表示的字符串有一个局限就是字符串常量一旦声明则不可改变,只有内存地址的指向可以改变,如果要频繁修改字符串,需要使用String Buffer 类。

String 类可以直接赋值实例化 , 但是StringBuffer类不行 , 必须实例化才可以操作。

String 与 StringBuffer类都是CharSequence接口的子类,都可以通过自动向上转型的操作为CharSequence接口实例化。

常用操作方法:

public StringBuffer append (数据类型 变量)                     数据追加操作

public StringBuffer reverse()                                            字符串反转操作

public StringBuffer insert(int offset,数据类型  变量)        在指定位置追加内容

public StringBuffer delete(int start , int end )                  删除指定索引范围内容

2、Runtime 类

在每一个JVM进程中都有一个运行时的操作类对象,对象所属Runtime类。利用Runtime类可以启动新的进程或进行相关运行时环境的操作。

常用操作方法:

public static Runtime getRuntime()                       取得Runtime类实例化对象

public long maxMemory()                                     返回最大可用内存大小

public long totalMemory()                                     返回所有可用内存大小

public long freeMemory()                                      返回所有空余内存大小

public void gc()                                                      执行垃圾回收操作

public Process exec(String command)                   创建新的进程

3、System类

public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)                 数组复制操作

public static long currentTimeMills()                                                                                                      取得当前的日期时间,以long型数据返回

public static void gc()                                                                                                                             垃圾收集

注意:如果希望在一个对象收尾时执行一些收尾工作,对象所在的类可以通过finalize()方法实现。此方法由Object类定义。

protected void finalize() throws Throwable;

 

引申1:所有异常类型最高的集成的继承类就是Throwable,并且在Throwable下有两个子类:

Error :指的是JVM错误 ,这时的程序并没有运行,无法处理。

Exception:指的是程序运行中出现的异常,用户可以使用异常处理格式处理。

此方法之所以抛出的是Throwable,因为这样出现异常或错误都不会导致程序中断。

引申2:

4、对象克隆

protected Object clone() throws CloneNotSupportedException;

由于使用了protected方法,在不同包产生对象时将无法调用Object类中的clone()方法,因此需要子类来覆写clone()方法(但调用的仍然是父类中的clone()方法)。

 

 两个对象占据不同的堆内存空间,所以互不影响。

5、Math类

在Math里一切都是static方法,所以可以直接用类名称进行调用。

public static long round(double a) 但是,这种方法会直接舍去小数位。

6、Random类

常用方法:

public Random ()                           构造方法,创建一个新的Random实例

public Random(long seed)             构造方法,创建一个新的Random实例并设置一个种子数

public int nextInt(int bound)            产生一个不大于指定边界的随机整数

7、大数字操作类

java.math.BigInteger和java.math.BigDecimal  这两个子类都属于Number的子类

大整数操作类 : BigInteger

操作方法:

public BigInteger(String val)                                          实例化BigInteger对象

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)                         除法操作,保留余数,数组第一个元素是商,第二个元素是余数

大小数字操作类:BigDecimal

操作方法:

public static final ROUND_HALF_UP            常量,向上进位 

public BigDecimal (double val)                      传递一个double型数据

public BigDecimal divide (BigDecimal divisor , int scale ,int roundingMode)    BigDecimal divisor:被除数

                                                                                                                              int scale:保留的小数位长度

                                                                                                                              int roundingMode:进位模式

这样就解决了上述Math.round()方法无法完成准确位的问题。

 

转载于:https://www.cnblogs.com/-maple/p/9611269.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值