java基础之string,stringbuffer,stringbuilder
一 string
public final class String
继承自java.lang.Object类。
实现了接口:
java.io.Serializable, Comparable<String>, CharSequence
String类是不能被修改的字符串。因为String类里面的数据是final类型的。
区别两种方式:
① String s = "aaaa";
② String s1 = new String("aaaa");
对于第一种,只在池中创建,然后返回对象地址。之后所有“aaaa"都是这个地址。
但是第二种,在池中创建,还要在堆(heap)中创建一个对象,返回的是堆中的地址。因为new了嘛。
(java.lang.String的intern()方法s1.intern()方法的返回值还是字符串"aaaa",表面上看起来好像这个方法没什么用处。但实际上,它做了个小动作:检查字符串池里是否存在"aaaa"这么一个字符串,如果存在,就返回池里的字符串;如果不存在,该方法会 把"abc"添加到字符串池中,然后再返回它的引用。
二 String StringBuffer StringBuilder
String :常量
StringBuffer:线程安全
StringBuilder:线程不安全
ps:推荐一篇精华文章 http://blog.csdn.net/clam_clam/article/details/6831345
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。