String StringBuilder StringBuffer String类是final类,不可以被继承,且它的成员方法也是final方法,当一个字符串对象进行操作操作时,任何的改变不会影响到这个对象,而是生成一个新的对象,操作是针对这个新的对象的: 对于下边程序的理解: public class Main { public static void main(String[] args) { String str1 = "hello world"; String str2 = n…
String public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage. */ private final char value[]; } 可以特别明显的看出.String是final类型,不可被继承.同时底层的数据结构--数组,也是final不可变的. StringBuilde…
ReentrantLock ReentrantLock(轻量级锁)也可以叫对象锁,可重入锁,互斥锁.synchronized重量级锁,JDK前期的版本lock比synchronized更快,在JDK1.5之后synchronized引入了偏向锁,轻量级锁和重量级锁.以致两种锁性能旗鼓相当,看个人喜欢,本文主要介绍一下lock和tryLock的区别. Lock VS  TryLock public void lock() { sync.lock(); } public void lockInter…
TreeSet,HashSet 区别 TreeSet public class TreeSet<E> extends AbstractSet<E> implements NavigableSet<E>, Cloneable, java.io.Serializable { public TreeSet() { this(new TreeMap<E,Object>()); } } 可以从代码中明显看出.TreeSet的底层其实是TreeMap. 而TreeMap…
[String,StringBuffer,StringBulider] 深入源码剖析String,StringBuilder,StringBuffer [作者:高瑞林] [博客地址]http://www.cnblogs.com/grl214 写给读者的话 ------亲爱的读者感谢您对小编的支持,当我正值青春的年纪里,很高兴能结识了一群花样年华的你们.当幸福像花儿一样盛开,请允许我记住在花季里始终如一关注我的你谢谢您一直在路上!让我们一起带着欢乐走进Java的世界! 目录 概述 一.概述 首先聊…
1. 区别 String为字符串常量,而StringBuilder和StringBuffer都是字符串变量,其中StringBuilder线程非安全,StringBuffer线程安全. 每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后,JVM的GC就会开始工作,速度会非常慢. 对StringBui…
public class TestString { private static final int COUNT = 10000000; public static void main(String args[]){ //String做测试,循环10000 String str = "-1"; Debug.begin(); for(int i=0; i<COUNT; ++i){ str = i + ""; } Debug.end(); StringBuffer…
difference among String,StringBuilder,StringBuffer String常用构造函数 String(byte[] bytes) String(byte[] bytes, int offset, int length) String(char[] value) String(char[] value, int offset, int count) String(int[] codePoints, int offset, int count) String(…
JDK源码分析系列---String,StringBuilder,StringBuffer 1.String public final class String implements java.io.Serializable, Comparable<String>, CharSequence { //存储字符,final修饰 private final char value[]; //缓存hash code,默认0 private int hash; //序列号 private static…