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

  • 相关阅读:
    1.9
    在VS中添加lib库的三种方法
    第一章之位向量和位运算
    【转载】window下配置pthread的方法及出现问题的解决方法
    opencv环境配置问题
    box-shadow用法简介
    创建资源文件
    nhibernate Mybatisnet
    js中(function(){…})()立即执行函数写法理解
    最近项目中用到的js
  • 原文地址:https://www.cnblogs.com/tigo/p/14316763.html
Copyright © 2011-2022 走看看