Java 基础 - String 源码

上班闲的时候看下源码,边看边更新,欢迎评论

继承关系

继承关系

主要继承三个接口

CharSequence:字符串序列,代表一种可读可写的字符串

Serializable: 序列化接口,表示可以实现序列化

Comparable: 可比较接口,须实现 CompareTo 函数

变量

private final char value[];

这是字符串存储的数组

private int hash;缓存该 String 的 hashCode

private static final ObjectStreamField[] serialPersistentFields =new ObjectStreamField[0];用来保存 String 的序列化字段

函数

String 中函数较多,写出主要的几个

构造函数

构造函数

String 的构造函数有 14 个,可以传入多种多样的参数,主要是 String,char[], byte[],StringBuffer,SrtingBuilder

getBytes

将 String 转化为指定编码格式的 byte 数组,默认编码格式为“ISO-8859-1”

compareTo

比较函数,实现 Comparable 接口,逐个比较 char 的方式实现,区分大小写

String 中还有另一个compareToIgnoreCase函数,是 String 内部申明了了一个CaseInsensitiveComparator比较器来实现的,不区分大小写。

startWith

判断从指定位置(默认为 0)开始之后是否与指定字符串相同

IndexOf,LastIndexOf

IndexOf,LastIndexOf

获取指定字符串。数值(Unicodeb 编码)或 char 数组在字符串的位置

ValueOf


字符串转换,注意 Object 为空时,返回一个null字符串

作者:suruns

链接:http://pipe.suruns.com/blogs/suruns/articles/2019/10/11/1570758958967

来源:Pipe著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(Java 基础 - String 源码)