码迷,mamicode.com
首页 > 编程语言 > 详细

Java 基础 - String 源码

时间:2020-01-10 10:54:48      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:stringbu   lock   shc   with   dad   pipe   iso   ase   注意   

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

继承关系

技术图片

主要继承三个接口

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 源码

标签:stringbu   lock   shc   with   dad   pipe   iso   ase   注意   

原文地址:https://www.cnblogs.com/suruns/p/12174544.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!