1、实例化String对象
String name = "Chris Yang";
String name = new String("Chris Yang");
String name = "Chris Yang";
String name = new String("Chris Yang");
一个字符串就是一个String类的匿名对象,即在堆中开辟了一段内存空间,并可直接被引用。如果使用new创建一个新的String对象,则会在堆中使用已知的字符串重新创建一个String对象。
看一个简单的例子:
package com.yxf.stringdemos;
public class StringDemos {
public static void main(String[] args) {
// TODO Auto-generated method stub
String name1 = "Chris Yang";//直接赋值
String name2 = "Chris Yang";
System.out.println("name1 == name2 --> " + (name1 == name2));
String name3 = new String("Chris Yang");//通过new创建
String name4 = name3;//传递引用
System.out.println("name3 == name1 --> " + (name3 == name1));
System.out.println("name3 == name4 --> " + (name3 == name4));
}
}
结果:
name1 == name2 --> true
name3 == name1 --> false
name3 == name4 --> true