Java 基础 - String 源码
Posted suruns
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
获取指定字符串。数值(Unicodeb 编码)或 char 数组在字符串的位置
ValueOf
字符串转换,注意 Object 为空时,返回一个null
字符串
作者:suruns
链接:http://pipe.suruns.com/blogs/suruns/articles/2019/10/11/1570758958967
来源:Pipe
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
以上是关于Java 基础 - String 源码的主要内容,如果未能解决你的问题,请参考以下文章