Java笔记--字符串 (String 、equals、Stringbulider)

目录

一、String常用方法

二、equals 和 “==”的区别

三、String类的不可变性

四、StringBuilder

五、StringBuilder和StringBuffer的区别


一、String常用方法

 

二、equals 和 “==”的区别

equals用来判断字符串内容是否相等,"=="用来判断对象引用指向的地址是否相等。

 

举例:

String s1 = “China”;

String s2 = “China”;

String ss1= new String("China");

String ss2= new String("China");

在内存的储存示意如下

 

所以:

s1和ss1内容相同,但是指向的地址不同

s1和s2都指向常量池中的“china”,所以内容相同,指向地址相同

ss1和ss2内容相同,指向地址不相同

 

三、String类的不可变性

String类是一个final修饰的类,具有不可变性。不可变性的是指它的实例的地址不可变。

举例说:

String str = “jackie”;//执行这一行代码时,引用str指向常量池的“jackie”所在的内存空间

str = "Ben"; //执行这一行代码,时引用str指向了新的“Ben”的内存空间。被废弃的jackie对象在常量上的地址不变

 

四、StringBuilder

 

 

五、StringBuilder和StringBuffer的区别

 

发布了23 篇原创文章 · 获赞 12 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_29796711/article/details/105716577
今日推荐