Java 基础 -String 源码

本贴最后更新于 1656 天前,其中的信息可能已经时过境迁

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

继承关系

image.png

主要继承三个接口

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

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

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

变量

private final char value[];
这是字符串存储的数组

private int hash; 缓存该 String 的 hashCode

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

函数

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

构造函数

image.png

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

getBytes

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

compareTo

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

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

startWith

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

IndexOf,LastIndexOf

image.png

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

ValueOf

image.png

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

  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3168 引用 • 8207 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...