String创建方法及其区别
String有两种创建方法
直接赋值
String name =“qaq”;
- 直接赋值:先从常量池中查找是否含有该字符串:没有则创建新的空间并将地址赋值给变量,有则直接将已有字符串空间地址赋值给变量
构造方法式
- 构造方法式:每创建一个对象都会在堆中创建一个新的空间,并将其地址赋值给变量
举例
public class Test{
public static void main(String [] args){
String name1="Jim";
String name2="Jim";
System.out,println(name1==name2);//比较name1与name2的地址,发现相同结果为true
String name3=new String("Lucy");
String name4=new String("Lucy");
System.out.println(name3==name4);//比较name3与name4的地址,发现结果相同结果为true
}
}