zoukankan      html  css  js  c++  java
  • java学习数字与字符串9 StringBuffer

    java学习数字与字符串9 StringBuffer

    内容

    StringBuffer是可变长的字符串

    基本知识

    • 根据str1创建一个StringBuffer类下的str2的对象

      StringBuffer str1=new StringBuffer(str2);
      
    • str1.append("")//在最后追加一段字符
      str1.delete(x,y)//删除一段字符
      str1.insert(n,"")//在n这个位置插入一段字符
      str1.reverse()//反转
      
    • 长度 容量

      String str1 = "the";
       
              StringBuffer sb = new StringBuffer(str1);
               
              System.out.println(sb.length()); //内容长度3
               
              System.out.println(sb.capacity());//总空间19
      

    注意事项

    关于第三点的解释后面再体会:

    为什么StringBuffer可以变长?
    和String内部是一个字符数组一样,StringBuffer也维护了一个字符数组。 但是,这个字符数组,留有冗余长度
    比如说new StringBuffer("the"),其内部的字符数组的长度,是19,而不是3,这样调用插入和追加,在现成的数组的基础上就可以完成了。
    如果追加的长度超过了19,就会分配一个新的数组,长度比原来多一些,把原来的数据复制到新的数组中,看上去 数组长度就变长了
    length: “the”的长度 3
    capacity: 分配的总空间 19

  • 相关阅读:
    javascript ext 闭包
    Hibernate HQL from superclass 问题
    sql查询按in顺序排序显示数据 oracle
    Hibernate createSQLquery()
    sql 分页
    javasript 闭包测试
    Excel 批量快速导入mySQL 解决方案~~
    C# 注册COM+组件步骤~
    QT错误集锦~
    QuartzNet Test~~
  • 原文地址:https://www.cnblogs.com/tigo/p/14316763.html
Copyright © 2011-2022 走看看