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()方法无法完成准确位的问题。
Java常用类库 读书笔记 一的更多相关文章
- Java常用类库 读书笔记 二
1.Date类 常用操作方法: public Date () 构造方法,实例化Date类对象 public Data(long Date) ...
- Java 常用类库与技巧【笔记】
Java 常用类库与技巧[笔记] Java异常体系 Java异常相关知识 Java在其创立的时候就设置了比较有效的处理机制,其异常处理机制主要回答了三个问题:what,where,why what表示 ...
- Google的Java常用类库 Guava资料
java的人应该都知道Apache commons的java常用类库吧,这个Guava和commons一样,封装出一套比jdk本身提供的常用类库强大.既然有了这个这么强大的类库,我们就没必要重复造轮子 ...
- 《深入java虚拟机》读书笔记之垃圾收集器与内存分配策略
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,或者是对其中不明白的地方做一些注释.主要是方便之后进行 ...
- JAVA编程思想读书笔记(二)--容器
接上篇JAVA编程思想读书笔记(一) 第八章.对象的容纳 No1: java提供了四种类型的集合类:Vector(矢量).BitSet(位集).Stack(堆栈).Hashtable(散列表) No2 ...
- JAVA(三)JAVA常用类库/JAVA IO
成鹏致远 | lcw.cnblog.com |2014-02-01 JAVA常用类库 1.StringBuffer StringBuffer是使用缓冲区的,本身也是操作字符串的,但是与String类不 ...
- JAVA编程思想读书笔记(五)--多线程
接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/detail ...
- JAVA编程思想读书笔记(四)--对象的克隆
接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 public class MyObject implements Cloneable { int i; public MyObje ...
- JAVA编程思想读书笔记(三)--RTTI
接上篇JAVA编程思想读书笔记(二) 第十一章 运行期类型判定 No1: 对于作为程序一部分的每个类,它们都有一个Class对象.换言之,每次写一个新类时,同时也会创建一个Class对象(更恰当的说, ...
随机推荐
- Linux Shell远程执行命令
1.问题描述 经常需要远程到其他节点上执行一些shell命令,如果分别ssh到每台主机上再去执行很麻烦,下边介绍shell命令远程执行的方法. 前提: 远程电脑之间已经配置ssh免密码登陆 2.脚本方 ...
- [好文mark] 深度学习中的注意力机制
https://cloud.tencent.com/developer/article/1143127
- SQL Server - Partition by 和 Group by对比
参考:https://www.cnblogs.com/hello-yz/p/9962356.html —————————————————— 今天大概弄懂了partition by和group by的区 ...
- Eclipse编译运行没问题,但执行mvn clean install跑单元测试失败的原因解析
问题描述:mvn clean install编译工程并运行单元测试出现如下错误 Tests run: 3, Failures: 0, Errors: 2, Skipped: 0, Time elaps ...
- Windows密钥容器和证书的关系
其实CSP主要是对容器里的密钥对操作的,和证书关系不大. 容器里的密钥对有两种类型:一种是AT_KEYEXCHANGE,表示加密的密钥对,一种是AT_SIGNATURE表示签名的密钥对. 由于美国的出 ...
- Mysql -- 外键的变种 三种关系
一.介绍 因为有foreign key的约束, 使得两张表形成了三种关系 多对一 多对多 一对一 二.如果找出两张表之间的关系 #.先站在左表的角度去找 是否左表的多条记录可以对应右 ...
- 使用Elasticsearch-dump迁移ES数据
1. Elasticsearch-dump 安装 1) yum install epel-release 2) yum install nodejs 3) yum install nodejs npm ...
- 【java】Java相关学习参考链接(持续更新)
How to do in java,https://howtodoinjava.com/,Java手册,分版本,并且有每个版本的新特性的详细解析. Java World,https://www.jav ...
- java----dom4j 解析XML
dom4j: 由于内部采用迭代器,适合读取大文档: 数据块 1.下载 https://dom4j.github.io/ 2.添加包到工程目录下 使用 import org.dom4j.Document ...
- 爬虫框架 Scrapy
一 介绍 crapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可用 ...