String类的intern()方法
返回字符串对象的规范化表示形式
当创建一个String类的对象时,也同时创建了一个初始为空的字符串对象池,并由类String来维护。
当调用一个String对象的intern()方法时,类String会去查询该字符串对象池,是否包含一个等于该对象的字符串(方法是通过equals()来确定),如果存在,则会返回这个池中的对象;否则,则将该字符串放入字符串对象池,并返回该字符串对象的引用。
它遵循以下规则:对于任意2个字符串s1,s2 当且仅当s1.equals(s2)为true时,s1.intern()==s2.intern()才为true.
如果在某一个代码块里存在频繁的调用同一个字符串对象的话,不妨尝试用intern()方法,会减少创建对象的开销。