String初始化的几种方式以及它们之间的不同 String s = “abc”; String s1 = new String(“abc”); 对于第一种创建方式: ①首先在常量池中查找“abc”,如果没有则创建对象 ②在栈中创建s的引用, ③将s直接指向对象abc 对于第二种创建方式: 它会创建2个对象,一个是常量池中的"abc",还会创建一个String对象,s1指向这个String对象。 所以这里如果对两个对象判断的话 System.out.println(s==s1); 会得到一个false结果