一、疑问
昨天在逛知乎的时候看到有一个公司的面试题是关于 String 对象 的,大概意思是 String 类的 “+”是如何实现的,刚好前些天在书上有看到这个实现方式,现在写出来供大家参考。下面先来大致了解一下 String 这个类:
public final class String
extends Object
implements Serializable, Comparable<String>, CharSequence
String 类底层是一个 final 修饰的 char 类型数组,意味着 String 类的对象是不可变的,所以 String 对象可以共享。
String 类中的每一个看起来会修改 String 值的方法,实际上都是创建了一个全新的 String 对象,用来包含修改后的字符串内容,这也可以说明 String 对象具有只读的属性。<