String字面值对象和构造方法创建对象的区别。
== 和 equals() 的区别:针对字符串对象。即引用对象。
- package cn.itcast_02;
- /*
- * String s = new String(“hello”)和String s = “hello”;的区别?
- * 有。前者会创建2个对象,后者创建1个对象。如果字符串常量池中已经存在该字符串内容,那么前者会创建1个对象,后者创建0个对象。
- *
- * ==:比较引用类型比较的是地址值是否相同
- * equals:比较引用类型默认也是比较地址值是否相同,而String类重写了equals()方法,比较的是内容是否相同。
- */
- public class StringDemo2 {
- public static void main(String[] args) {
- String s1 = new String("hello");
- String s2 = "hello";
- System.out.println(s1 == s2);// false
- System.out.println(s1.equals(s2));// true
- }
- }
复制代码
|
|