StringBuffer的s1.capacity()是多少?】的更多相关文章

定义有StringBuffer s1=new StringBuffer(10);s1.append(“1234”)则s1.length()和s1.capacity()分别是多少? StringBuffer s = new StringBuffer(x);  x为初始化容量长度s.append("Y"); "Y"表示长度为y的字符串length始终返回当前长度即y:对于s.capacity():1.当y<x时,值为x以下情况,容器容量需要扩展2.当x<y&…
从API查到capacity的作用是查看StringBuffer的容器容量是多少,刚开始纳闷这个跟length的区别在哪?试验了几次感觉有点不解.所以直接跟进源码分析. 直接通过new StringBuffer(String str):时,capacity是str.length+16,从源码可知: 如果直接是new StringBuffer(),则capacity为16,见下图: 如果小于16则默认容器的大小为16.如果大于16则会调用expandCapacity 函数进行容量的扩展. 由源码可…
StringBuffer 线程安全的可变字符序列. StringBuffer源码分析(JDK1.6): public final class StringBuffer extends AbstractStringBuilder  implements java.io.Serializable, CharSequence StringBuffer类被final修饰,可知StringBuffer类不能被继承. StringBuffer中的大部分方法都有synchronized修饰.有些虽然没有syn…
StringBuffer,由名字可以看出,是一个String的缓冲区,也就是说一个类似于String的字符串缓冲区,和String不同的是,它可以被修改,而且是线程安全的.StringBuffer在任意时刻都有一个特定的字符串序列,不过这个序列和它的长度可以通过一些函数调用进行修改.它的结构层次如下图: StringBuffer是线程安全的,因此如果有几个线程同时操作StringBuffer,对它来说也只是一个操作序列,所有操作串行发生. 每一个StringBuffer都有一个容量,如果内容的大…
String类与StringBuffer类   一.String类和StringBuffer类的区别 String类是不可变类,新建的对象为不可变对象(String类的内容和长度是固定的),一旦被创建就不能修改它的值(对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去): String类是final类型不可被继承. StringBuffer类是可变类,新建的对象是一个可变的对象,当需要修改其内容的时候,不需要再创建新的字符串对象,而是直接操作原来的串:不能通过赋值…
StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类. 所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入.删除等操作,使用StringBuffer要更加适合一些. 在StringBuffer类中存在很多和String类一样的方法,这些方法在功能上和String类中的功能是完全一样的. 但是有一个最显著的区别在于,…
参考 http://www.cnblogs.com/springcsc/archive/2009/12/03/1616330.html StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类. 所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入.删除等操作,使用StringBuffer要更加适合一些. 在String…
1.StringBuffer StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类.所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入.删除等操作,使用StringBuffer要更加适合一些. 在StringBuffer类中存在很多和String类一样的方法,这些方法在功能上和String类中的功能是完全一样的.但…
接上文:Java基础——数组应用之字符串String类 一.StringBuffer类 StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类. 所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入.删除等操作,使用StringBuffer要更加适合一些. 在StringBuffer类中存在很多和String类一样的方…
String 1.toString:显示对象内容时系统自动调用的方法. public class TOSTRING { public String toString(){ return "this is toString method"; } } TOSTRING t = new TOSTRING(); System.out.println(t); 2.Math Math.函数 3.String 1)char charAt(int n)  //获得字符串索引为1的字符 String a…