String Object

来源:互联网 发布:人体工程学椅子 知乎 编辑:程序博客网 时间:2024/05/22 14:51

String在Java中是比较特殊的数据类型,平时也会遇到很多关于String的问题,所以,我在此对String的资料做了整理。

一、String对象定义:
       String对象的定义有下面两种方法

       第一种方法是在Stack上面建立一个String池,String池中的元素是不允许重复的,也就是说,如果再用第一种方法建立一个"Hello World"的String对象stackString2,那么String池中不会再去建立一个“Hello Wolrd”的String,而是将stackString2设为第一次创建的对象的引用。

第二种方法是在Heap上面建立一个String对象,这种方式在Heap上面建立的对象是允许存在重复对象的。

二、String对象相等的比较:

Java中对相等的比较有两种方式,“==”和“equals()”,其中“==”比较的是两边是不是指向同一个对象,而equals()方法针对的是内容的比较。

例如:


三、 String中的intern()方法

Java源代码中是这么来描述的:

“It follows that for any two strings s and t, s.intern() == t.intern() is true if and only if s.equals(t) is true.”

也就是说,intern()方法比较的其实就是内容,就相当于s.equals(t)。


0 0