大学之道,在明明德,在亲民,在止于至善
是一些比较常见的常用类,不是所有的常用类。
1. Object(所有类的父类)
方法 | 类型 | 说明 |
---|---|---|
Object clone() | 普通 | 浅拷贝,需要实现Cloneable接口,深拷贝需要反序列化 |
boolean equals(Object) | 普通 | 比较两个对象的地址是否相等 |
void finalize() | 普通 | 当垃圾回收器确定不存在对该对象的更多引用时,对象的圾回收器调用该方法 |
Class getClass() | 普通 | 反射返回一个对象运行时的实例类(.class文件) |
int hashCode() | 普通 | 返回该对象的散列码值,可以判断两个对象是否相等,不同一定不等,相同不一定相等 |
void notify() | 普通 | 激活等待在该对象的监视器上的一个线程,notify(), wait()依赖于“同步锁”<共享的资源> |
void notifyAll() | 普通 | 激活等待在该对象的监视器上的全部线程 |
String toString() | 普通 | 默认返回运行时类名+@+对象的hashCode的16进制数 |
void wait() | 普通 | 在其他线程调用此对象的 notify() 方法或 notifyAll() 方法前,导致当前线程等待 |
2. String类
方法 | 类型 | 说明 |
---|---|---|
String() | 构造 | 创建一个空的字符串 |
String(byte[] bys) | 构造 | 通过字节数组创建字符串 |
String(char[] chs) | 构造 | 通过字符数组创建字符串 |
String(byte[] bys,int offset,int length) | 构造 | 通过字节数组一部分创建字符串 |
String(char[] chs,int offset,int length) | 构造 | 通过字符数组一部分创建字符串 |
String(String original) | 构造 | 通过字符串常量值创建字符串 |
equals(Object obj) | 普通 | 比较两个字符串是否相等 |
equalsIngnoreCase(Object obj) | 普通 | 忽略大小写比较两个字符串是否相等 |
contains(String str) | 普通 | 是否包含指定字符串 |
startsWith(String str) | 普通 | 是否以指定的字符串开头 |
endWith(String str) | 普通 | 是否以指定的字符串结尾 |
isEmpty() | 普通 | 是否为空 |
matches(String regex) | 普通 | 判断字符串是否匹配给定的正则表达式 |
length() | 普通 | 获取长度 |
charAt(int index) | 普通 | 获取指定索引位置处的字符 |
indexOf(int ch) | 普通 | 获取指定字符第一次出现的索引值(从0开始) |
indexOf(int ch,int fromIndex) | 普通 | 获取从指定索引位置开始,获取指定字符第一次出现的索引值 |
indexOf(String s) | 普通 | 获取指定字符串第一次出现的索引值 |
indexOf(String s,int fromIndex) | 普通 | 获取从指定索引位置开始,获取指定字符串第一次出现的索引值 |
lastIndexOf(int ch) | 普通 | 获取指定字符最后一次出现的索引值 |
substring(int start) | 普通 | 从指定位置开始一直截取到末尾 |
substring(int start,int end) | 普通 | 截取[start,end)范围 |
byte[] getBytes() | 普通 | 将字符串转成字节数组 |
char[] toCharArray() | 普通 | 将字符串转成字符数组 |
static valueOf(char[] chs) | 普通 | 将char[]转成字符串 |
static valueOf(int num) | 普通 | 将int类型转成字符串 |
static valueOf(Object obj) | 普通 | 将任意类型转成字符串 |
toLowerCase() | 普通 | 转成小写 |
toUpcase() | 普通 | 转成大写 |
concat(String str) | 普通 | 字符连接 |
replace(char old,char new) | 普通 | 将old字符替换成new字符 |
replace(String old,String new) | 普通 | 将old字符串替换成new字符串 |
trim() | 普通 | 去除两边空格 |
int compareTo(String s) | 普通 | 字典比较,如果前面值小于后面值返回负数,否则返回正数,先比较第一个元素,如果相等再比较第二个元素…返回元素之间的差值;如果比较字符串有包含关系,返回的值是它们长度的差值 |
int compareToIgnoreCase(String s) | 普通 | 忽略大小写字典比较 |
String replaceAll(String regex, String replacement) | 普通 | 使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串 |
String replaceFirst(String regex, String replacement) | 普通 | 使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串 |
String[] split(String regex) | 普通 | 根据给定正则表达式的匹配拆分此字符串 |
String[] split(String regex, int limit) | 普通 | 根据匹配给定的正则表达式来拆分此字符串 |
3. StringBuilder类
方法 | 类型 | 说明 |
---|---|---|
StringBuilder() | 构造 | 以默认容量创建空的StringBuilder对象 |
StringBuilder(int capacity) | 构造 | 以指定容量创建空的StringBuilder对象 |
StringBuilder(String str) | 构造 | 以指定的字符串创建StringBuilder对象 |
int capacity() | 普通 | 获取容量 |
int length() | 普通 | 获取长度 |
append(int value) | 普通 | 追加。可以追加多种类型 |
insert(int offset,String s) | 普通 | 在指定的位置插入指定数据 |
deleteCharAt(int index) | 普通 | 删除指定索引处的元素 |
delete(int start,int end) | 普通 | 删除[start,start-1]范围内的元素 |
replace(int start,int end,String s) | 普通 | 将[start,end-1]范围内的元素替换成指定字符串 |
reverse() | 普通 | 元素反转 |
String subString(int start) | 普通 | 截取指定位置一直到末尾 |
String subString(int start,int end) | 普通 | 截取[start,end-1]范围 |
4. StringBuffer类
方法 | 类型 | 说明 |
---|---|---|
StringBuffer() | 构造 | 以默认容量创建空的StringBuffer对象 |
StringBuffer(int capacity) | 构造 | 以指定容量创建空的StringBuffer对象 |
StringBuffer(String str) | 构造 | 以指定的字符串创建StringBuffer对象 |
append(int value) | 普通 | 追加。可以追加多种类型 |
insert(int offset,String s) | 普通 | 在指定的位置插入指定数据 |
delete(int start,int end) | 普通 | 删除[start,start-1]范围内的元素 |
reverse() | 普通 | 元素反转 |
5. CharSequence接口
方法 | 类型 | 说明 |
---|---|---|
public char charAt(int index) | 普通 | 获取指定索引的字符 |
public int length() | 普通 | 获取字符串长度 |
public CharSequence subSequence(int start, int end) | 普通 | 截取部分字符串 |
String、StringBuilder、StringBuffer三者都实现了CharSequence接口
String内容不可改变,StringBuilder和StringBuffer内容可变
StringBuilder是线程不安全的,不同步,效率高;StringBuffer是线程安全的,同步,效率低
6. 编码表
编码名字 | 说明 |
---|---|
ASCII码 | 最高为是符号为,其他是数值位,所有编码表都兼容ASCII码表 |
ISO-8859-1 | 拉丁码表 |
BG2312 | 中文编码表 |
GBK | GB2312的升级版,1个汉字对应2个字节 |
GB18030 | GBK的升级版 |
BIG-5 | 中文繁体编码表,俗称”大5码” |
Unicode | 国际标注码,所有字符都有两个字节表示,Java默认使用该编码表 |
UTF-8 | 万国码,一个汉字对应3个字节 |
7. 正则表达式
正则表达式 | 说明 |
---|---|
x | x字符,a表a字符 |
\\ | 反斜线字符 |
\n | 换行符 |
\r | 回车符 |
\t | 制表符 |
[abc] | 表示a、b、c中的一个字符 |
[^abc] | 表示不是a、b、c中的任何一个字符 |
[a-zA-Z] | 表示a |
[0-9] | 表示数字 |
. | 表示任意字符 |
\. | 表示’.’字符 |
\d | 表示数字字符,[0-9] |
\D | [^0-9],表示非数字字符 |
\w | 表示单词字符,[a-zA-Z_0-9] |
\W | [^a-zA-Z_0-9],表示非单词字符 |
\s | 任意一位空格如”\n“、”\t“ |
\S | 任何一位非空格 |
^ | 表示行的开头 |
$ | 表示行的结尾 |
\b | 表示单词的边界 |
? | 表示0次或者1次 |
* | 表示0次或者多次 |
+ | 表示1次或者多次 |
{n} | 表示n次 |
{n,} | 表示至少n次 |
{n,m} | n~m次 |
正则表达式A正则表达式B | 与 |
正则表达式A|正则表达式B | 或 |
(正则表达式) | 多个作为一组表示 |
8. AutoCloseable接口
1 | interface IMessage extends AutoCloseable { |
9. Runtime类
方法 | 类型 | 说明 |
---|---|---|
public static Runtime getRuntime() | 普通 | 通过该类的实例对象来获取当前虚拟机的相关信息 |
public int availableProcessors() | 普通 | 获取可以用的处理器的个数 |
long maxMemory() | 普通 | 返回 Java 虚拟机试图使用的最大内存量 |
long freeMemory() | 普通 | 返回 Java 虚拟机中的空闲内存量 |
long totalMemory() | 普通 | 返回 Java 虚拟机中的内存总量 |
void gc() | 普通 | 运行垃圾收集器,释放垃圾空间 |
10. System类
方法 | 类型 | 说明 |
---|---|---|
没有构造方法 | ||
public static void arrayCopy(Object[] srcArr,int srcPos,Object[] desArr,int destPos,int len) | 普通 | 数组复制 |
public static long currentTimeMills() | 普通 | 获取当前时间毫秒值 |
public static void gc() | 普通 | 运行垃圾回收处理机制(系统会在某个不确定的时间调用该方法),会调用finalize(),进行垃圾回收 |
exit(int status) | 普通 | 退出JVM,0表示非异常退出 |
11. Cleaner类
1 | //传统回收前依靠finalize(),jdk1.9提供Cleaner类 |
12. Math类
方法 | 类型 | 说明 |
---|---|---|
abs(int a) | 普通 | 绝对值 |
ceil(double d) | 普通 | 向上取整 |
floor(double d) | 普通 | 向下取整 |
max(int a,int b) | 普通 | 最大值 |
pow(double a,double b) | 普通 | a的b次幂 |
random() | 普通 | 随机数[0.0,1.0] |
round(float f) | 普通 | 四舍五入 |
sqrt(double d) | 普通 | 算术平方根 |
log(int a) | 普通 | 对数 |
13. Random类
方法 | 类型 | 说明 |
---|---|---|
Random() | 构造 | 以当前时间毫秒值作为种子,创建Random对象 |
Random(long seed) | 构造 | 以指定种子创建Random对象 |
nextInt() | 普通 | 生成1个int类型范围的随机数 |
nextInt(int n) | 普通 | 产生1个[0,n-1]范围内的随机数 |
14. 大数字处理类
方法 | 类型 | 说明 |
---|---|---|
BigInteger(String s) | 构造 | 通过字符串创建BigInteger对象 |
add(BigInteger bi) | 普通 | 加法运算 |
subtract(BigInteger bi) | 普通 | 减法运算 |
multiply(BigInteger bi) | 普通 | 乘法运算 |
divide(BigInteger bi) | 普通 | 除法运算 |
public BigInteger remainder(BigInteger val) | 普通 | 做取余运算 |
public BigInteger[] divideAndRemainder (BigInteger val) | 普通 | 用数组返回余数和商,结果数组中第一个值为商,第二个值为余数 |
public BigInteger max(BigInteger val) | 普通 | 返回较大的数值 |
public BigInteger min(BigInteger val) | 普通 | 返回较小的数值 |
BigDecimal(String s) | 构造 | 通过字符创建BigDecimal对象 |
BigDecimal(int s) | 构造 | 通过int创建BigDecimal对象 |
BigDecimal(double s) | 构造 | 通过double创建BigDecimal对象 |
public BigDecimal add(BigDecimal augend) | 普通 | 做加法操作 |
ublic BigDecimal subtract(BigDecimal subtrahend) | 普通 | 做减法操作 |
public BigDecimal multiply(BigDecimal multiplicand) | 普通 | 做乘法操作 |
public BigDecimal divide(BigDecimal divisor , int sacle ,int roundingMode) | 普通 | 做除法操作,方法中 3 个参数分别代表除数、商的小数点后的位数、近似处理模式 |
15. Date类
方法 | 类型 | 说明 |
---|---|---|
Date() | 构造 | 以当前时间毫秒值创建Date对象 |
Date(long time) | 构造 | 以指定的毫秒值创建Date对象 |
long getTime() | 普通 | 获取Date对象的毫秒值 |
setTime(long time) | 普通 | 设置Data对象的毫秒值 |
16. SimpleDateFormat类(子类)和DateFormat类(抽象类)
方法 | 类型 | 说明 |
---|---|---|
getDateInstance(int style,Locale loc) | 普通 | 获取日期格式器,该格式器具有给定的语言环境和给定的格式化风格 |
String format(Date date) | 普通 | 格式化 |
Date parse(String time) | 普通 | 解析 |
SimpleDateFormat() | 构造 | 以默认模式创建对象 |
SimpleDateFormat(String pattern) | 构造 | 以指定模式创建对象 |
String format(Date date) | 普通 | 格式化 |
Date parse(String time) | 普通 | 解析 |
17. 国际化
1 | //Locale类 |
18. Arrays数组操作类
方法 | 类型 | 说明 |
---|---|---|
public static void sort(Object[] a) | 普通 | 升序排列 |
public static int binarySearch(Object[] a, Object key) | 普通 | 对排好序的数组进行二分查找法操作 |
public static int compare(int[] a,int[] b) | 普通 | 比较两个数组的大小,大于(返回1),小于(返回-1),等于(返回0) |
public static boolean equals(long[] a, long[] a2) | 普通 | 数组相等判断 |
public static void fill(int[] a, int val) | 普通 | 数组填充 |
public static String toString(int[] a) | 普通 | 数组转换为字符串 |
19. UUID类
方法 | 类型 | 说明 |
---|---|---|
public static UUID randomUUID(); | 普通 | 生成一个随机UUID时 |
public static UUID fromString(String name) | 普通 | 通过指定格式的字符串获取UUID数据 |
20. Optional空处理
方法 | 类型 | 说明 |
---|---|---|
public static |
普通 | 返回空数据 |
public T get() | 普通 | 获取保存的数据 |
public static |
普通 | 保存数据,如果有null则出现NullPointerException异常 |
public static |
普通 | 保存数据,允许为空 |
public T orElse(T other) | 普通 | 空数据时返回其他数据 |
21. ThreadLocal
方法 | 类型 | 说明 |
---|---|---|
public void set(T value) | 普通 | 保存数据 |
public T get() | 普通 | 获取数据 |
public void remove | 普通 | 删除当前线程保存的数据 |
22. Scanner类
方法 | 类型 | 说明 |
---|---|---|
Scanner(InputStream is) | 构造 | 构造一个文本扫描器,它生成的值是从指定的值输入流扫描的,System.in 是一个标准的输入流,属于InputStream |
boolean hasNext() | 普通 | 是否有下一个数,有true,没有false |
String next() | 普通 | 获取下个数 |
int nextInt() | 普通 | 获取下个int数据 |
String nextLine() | 普通 | 获取一行数据 |
23. Calendar类
方法 | 类型 | 说明 |
---|---|---|
static Calender getInstance() | 普通 | 以默认时区和语言创建日历 |
int get(int field) | 普通 | 获取指定字段的日历值 |
set(int field,int value) | 普通 | 给指定的日历字段设置指定的值 |
set(int year,int month,int date) | 普通 | 设置年月日 |
Date getTime() | 普通 | 获取日历对象的日期 |
setTime(Date d) | 普通 | 设置日历对象的日期 |
add(int field,int amount) | 普通 | 对指定的日历字段添加指定的值 |
24. 总结
还有很多没有写完的常用类,欢迎大家总结!