通过构造方法创建字符串对象:String s = new String("Java");
通过直接赋值创建字符串对象:String s = "Java";
“==”用于比较基本数据类型的值是否相同,用于比较引用数据类型的地址值是否相同。
字符串的内容是放在方法区的常量池里面的,是为了方便字符串的重复使用。new的时候是在堆内存里,通过构造方法来创建对象。直接赋值这类创建对象的方法是在方法区的常量池中。
Public static viod main (String [] args){
String s1 = new String ("Hello");
String s2 = "Hello";
String s3 = "Hello";
System.out.println(s1 == s2); //false
System.out.println(s1 == s3); //false
System.out.println(s2 == s3); //true
}