Java中如何计算字符串缓冲区容量

Java.lang包的String类表示一组字符。 Java程序中的所有字符串文字(如“abc”)都实现为该类的实例。 String对象是不可变的,一旦您创建了String对象,您就不能更改它们的值,如果您尝试这样做而不是更改值,则会创建一个具有所需值的新对象,并且引用将转移到新创建的对象,而不使用前一个对象。

如果需要对String进行大量修改,则使用StringBuffer(和StringBuilder)类。

与Strings不同,StringBuffer类型的对象可以一遍又一遍地修改,而不会留下很多新的未使用对象。它是线程安全的可变字符序列。

示例

public class StringBufferExample {

   public static void main(String[] args) {

      StringBuffer buffer = new StringBuffer();

      buffer.append("Hello ");

      buffer.append("how ");

      buffer.append("are ");

      buffer.append("you");

      System.out.println("字符串缓冲区的内容: "+buffer);

   }

}

输出结果

字符串缓冲区的内容: Hello how are you

计算StringBuffer容量

StringBuffer的容量表示StringBuffer中的字符数。

最初,每个StringBuffer对象都以16的固定初始容量创建。您也可以创建具有所需初始容量的StringBuffer对象,绕过所需的整数值作为参数-

StringBuffer sb = new StringBuffer(225);

在将数据追加到StringBuffer对象时,一旦超过初始容量,StringBuffer对象的容量就会增加。

StringBuffer类的名为Capacity()的方法返回一个整数值,该值表示StringBuffer()的容量。使用此方法,您可以找到StringBuffer的容量。

例子

以下Java程序演示了如何查找StringBuffer对象的容量。

public class StringBufferCapacity {

   public static void main(String[] args) {

      StringBuffer buffer = new StringBuffer();

      System.out.println("初始容量: "+buffer.capacity());

      buffer.append("Hello ");

      buffer.append("how ");

      buffer.append("are ");

      buffer.append("you");

      System.out.println("字符串缓冲区的内容: "+buffer);

      System.out.println("添加数据后的容量: "+buffer.capacity());

   }

}

输出结果

初始容量: 16

字符串缓冲区的内容: Hello how are you

添加数据后的容量: 34


以上是 Java中如何计算字符串缓冲区容量 的全部内容, 来源链接: utcz.com/z/341256.html

回到顶部