A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

String字面值对象和构造方法创建对象的区别。
== 和 equals() 的区别:针对字符串对象。即引用对象。
  1. package cn.itcast_02;

  2. /*
  3. * String s = new String(“hello”)和String s = “hello”;的区别?
  4. * 有。前者会创建2个对象,后者创建1个对象。如果字符串常量池中已经存在该字符串内容,那么前者会创建1个对象,后者创建0个对象。
  5. *
  6. * ==:比较引用类型比较的是地址值是否相同
  7. * equals:比较引用类型默认也是比较地址值是否相同,而String类重写了equals()方法,比较的是内容是否相同。
  8. */
  9. public class StringDemo2 {
  10.         public static void main(String[] args) {
  11.                 String s1 = new String("hello");
  12.                 String s2 = "hello";

  13.                 System.out.println(s1 == s2);// false
  14.                 System.out.println(s1.equals(s2));// true
  15.         }
  16. }
复制代码



String字面值对象和构造方法创建对象的区别.jpg (25.88 KB, 下载次数: 22)

String字面值对象和构造方法创建对象的区别.jpg

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马