zoukankan      html  css  js  c++  java
  • StringBuilder类

    StringBuilder类

    • 描述

       java.lang.StringBuilder; 此类重写了toString方法,
      
    • 方法

      构造方法:
      public StringBuilder​(); 
          //构建一个不带任何字符的字符串生成器,初始容量为16
      public  StringBuilder​(String str); 
          //构造一个初始化为指定字符串内容的字符串构建器。 字符串构建器的初始容量为16加上字符串参数的长度。 
          //扩容问题:如果要添加的数据底层数组盛不下了,那就需要扩容底层的数组。
          //默认情况下,扩容为原来容量的2倍 + 2,同时将原数组中的元素复制到新的数组中。
      
      常用方法
      增:
      StringBuilder append​(...); 添加任意类型的字符串【除了null】,并返回当前(this)对象本身。
          //如果一个方法返回值是本身,那么我们可以进行链式调用,或者进行链式编程。
      删:
      StringBuilder delete​(int start, int end); 删除此序列的子字符串中的字符。  
      deleteCharAt(int index); 方法的作用是删除指定位置的字符
      改:
      StringBuilder replace​(int start, int end, String str); 用指定的 String的字符替换此序列的子字符串中的字符。
      void setCharAt​(int index, char ch); 指定索引处的字符设置为 ch 。   
      查:
      char charAt​(int index); 返回指定索引处的此序列中的 char值。   
      int indexOf​(String str) 返回指定子字符串第一次出现的字符串内的索引。 
      插:
      StringBuilder insert​(int offset, xxx); 将指定的类型【除了null】插入此序列表中(offset<0||offset>length()报异常)
              //如果插入的是对象(没有重写toString)是地址,否则为值  
      长度:
      int length​() 当前由此对象表示的字符序列的长度 。  
      int capacity​() 返回当前容量。
      反转
      StringBuilder reverse()
      遍历:
      for() + charAt() / toString()
          
          不管存储什么类型的数据,进入字符串缓冲区都变成了字符值
      
    • String、StringBuffer、StringBuilder三者的对比

      String:不可变的字符序列;jdk1.0 底层使用char[]存储
      StringBuffer:可变的字符序列;jdk1.0 线程安全的,效率低;底层使用char[]存储
      StringBuilder:可变的字符序列;jdk5.0 新增的,线程不安全的,效率高;底层使用char[]存储
      
    • 对比String、StringBuffer、StringBuilder三者的执行效率
      从高到低排列:StringBuilder > StringBuffer > String

  • 相关阅读:
    Linux内存、Swap、Cache、Buffer详细解析
    深入浅出前端本地储存
    Javscript字符串常用方法总结
    Python优雅日志记录器-Loguru
    Flume推送数据到SparkStreaming案例实战和内幕源码解密
    SparkStreaming数据源Flume实际案例分享
    基于HDFS的SparkStreaming案例实战和内幕源码解密
    Scala和Java二种方式实战Spark Streaming开发
    StreamingContext、DStream、Receiver深度剖析
    案例动手实战并在电光石火间理解其工作原理
  • 原文地址:https://www.cnblogs.com/zk2020/p/14065678.html
Copyright © 2011-2022 走看看