字符串常量本质上就是String类的匿名对象
example:
public class testDemo{
public static void main(String args[]){
String str = "hello";
System.out.println("hello".equals(str));
}
}
字符串“hello”可以调用equals()方法,说明它为String类的一个对象。
String str = "hello"; 就是给一个匿名对象一个名字,并且保存在堆内存中。
ps:在进行字符串内容比较的时候,建议将用户输入的字符串放在后面,如下:
System.out.println("hello".equals(str));
如果写成如下形式
public class testDemo{
public static void main(String args[]){
String input = null;//假设用户输入为空
System.out.println(str.equals("hello"));//NullPointerException
}
}