String 和 new String

Posted 慕华山

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了String 和 new String相关的知识,希望对你有一定的参考价值。

String s1=”welcome”;
String s2= “welcome:;
String s3 =new String(”welcome”);  //新建对象   指向新的内存   比较内容相同 但是地址不同  
System.out.println(s1.equals(s3));
System.out.println(s1 ==s3);
== 是比较内存地址
equals 是比较内容 
在s1 和s2比较的时候,他们都引用了同一块内存地址,所以他们 ==和equals 都是true
但是在s1和s3比较的时候,  因为s3是new String ,相当于在内存中新建了一个对象 ,指向了一块新的内存地址,
所以在比较==的时候,引用地址是不同的 ,报false,比较equals的时候是相同的

以上是关于String 和 new String的主要内容,如果未能解决你的问题,请参考以下文章

Java Stringstring[]List初始化方法

Object类型转换为String类型

String 和 StringBuilder

java StringString.concat和StringBuilder性能对比

String常用方法

Java中String类型的数据比较