核心API的使用

一、Object类

Object类是Java语言中所有类的根,所有的类都直接或间接的继承了Object类;数组也继承了Object类;

Object类中定义了equals方法:
1.Object用来比较两个对象的虚地址,如果虚地址相同则返回true,否则返回false;如果想要比较两个对象的内容,我们就要重写hascode方法和equals方法
2.String类中的equals方法是重写了父类的equals方法,所以比较的是内容

toString
1、默认字符串的返回格式: getClass().getName() + ‘@’ + Integer.toHexString(hashCode())。类名@哈希码值的十六进制形式。
2、打印输出对象时,默认调用toString方法,如果想要自己限定格式,那么就重写toString方法

Clone()
1.Clone方法能够“复制”一个对象,生成一个新的引用,分配新的内存空间;
2.一个类必须实现Cloneable接口,才能被克隆,否则抛出异常;
3.Object类中的clone方法默认是浅克隆;如果要实现深克隆,需要自行重写clone方法

二、String类

常用方法

String substring(int beginIndex):从一个索引位置开始,截取剩下的所有字符;

String substring(int beginIndex, int endIndex) 返回两个索引位置之间(不包括第endIndex个字符)的所有字符

char charAt(int index):返回指定索引位置的字符

int indexOf(String str):返回字符串中子串str第一次出现的位置索引值

static String valueOf(int i) :将int类型参数以字符串类型返回

int compareTo(String anotherString) :比较两个字符串的字典顺序,返回值为正数,表示大于 0-等于 负数-小于

boolean endsWith(String suffix) :判断一个字符串是否以suffix结尾

byte[] getBytes() :将字符串转换为byte数组

char[] toCharArray():将字符串转换为char数组

int length():返回字符串的长度

boolean equals(Object anObject) :比较两个字符串的内容是否相等

String[] split(String regex) :此字符串分割为给定的 regular的匹配。

三、自然比较对象

1.内部比较对象

Arrays.sort(books)–排序

(1)基本数据类型可以直接排序

(2)引用数据类型排序,必须实现Comparable接口,重写compareTo方法定义比较规则

javase学习文档 javase内容_随机数

javase学习文档 javase内容_java_02

2.外部比较对象

Arrays.sort(bookarys,new BookCompartor());–排序

(1)外部比较器:实现Comparator接口,重写compare方法

javase学习文档 javase内容_字符串转换_03

javase学习文档 javase内容_随机数_04

四、数学API
1、Math类
Math类是final类,不能被继承,所有方法都是static方法,可以直接用类名调用;

2、BigInteger类

(1)java中整数最大范围是long型,64位,如果需要使用超过long范围的大整数,可以使用BigInteger类;

(2)BigInteger位于java.math包中,定义了一系列的数学运算方法,调用这些方法可以进行计算,不能使用运算符计算

javase学习文档 javase内容_java_05


3、BigDecimal类(常用于系统中对金额的计算)

(1)BigDecimal用来对double、float类型进行精确计算;

javase学习文档 javase内容_字符串转换_06


五、随机数

Random random = new Random();该对象每次生成的随机数不同

nextInt(int n):生成int类型随机数,数值范围[0,n);

nextDouble():生成0-1.0之间的随机数

javase学习文档 javase内容_java_07


六、时间类

1.Date():获取当前的系统时间

2.日历:Calendar是抽象类,不能直接使用new创建对象;

(1)static Calendar getInstance() :使用默认时区和语言环境获得日历对象;

3.格式转化

(1)SimpleDateFormat中定义了对时间进行格式化的方法

(2)SimpleDateFormat(String pattern) 使用模式字符串创建对象;

(3)String format(Date date) 把date进行格式化;

(4)public Date parse(String source) throws ParseException 把字符串转换成Date对象,如果格式不匹配抛出转换异常4.jdk8新特性

int getYear() 返回年字段值;

int getMonthValue() 返回月字段值;

int getDayOfMonth() 返回天字段值

static LocalDate parse(CharSequence text) 将字符串转换成LocalDate对象;

javase学习文档 javase内容_字符串_08


javase学习文档 javase内容_随机数_09

javase学习文档 javase内容_字符串_10

七、UUID
UUID:通常在分布式系统中用来生成唯一ID
eg:85756770-da86-4c3b-a7bf-d6b7848b7d4e