Java常用类—StringBuffer类

文章目录

    • 一、StringBuffer类
        • 1. StringBuffer类概述
        • 2. StringBuffer类的构造方法
        • 3. StringBuffer类的添加方法
        • 4. StringBuffer的删除方法
        • 5. StringBuffer类的替换和反转方法
        • 6. StringBuffer类的截取方法及其他方法
        • 7. StringBuffer与String间相互转换
        • 8. StringBuffer类与StringBuilder类的区别
        • 9. String与StringBuffer作为参数传递

一、StringBuffer类

1. StringBuffer类概述

  • StringBuffer类有什么作用
    • StringBuffer类可以理解为一个字符串容器,或者说是一个字符串缓冲区,在里面可以通过方法改变字符序列的长度和内容,对字符串进行添加和插入等操作
  • String Buffer类和String类操作字符串的区别
    • String类中字符串是常量,一经定义就不可改变,每次拼接插入等操作都会创建新的String对象,费时而且占内存
    • StringBuffer类中可以使用该类提供的方法在原字符序列上进行操作,不会产生新的对象,节省空间和时间

2. StringBuffer类的构造方法

  • public StringBuffer()

    • 无参构造,创默认建一个长度为16的StringBuffer对象(容器),里面什么也没存储
  • public StringBuffer(int capacity)

    • 创建一个StringBuffer对象,长度为指定的长度
  • public StringBuffer(String str)

    • 创建一个StringBuffer对象,并将指定的字符串传递进去,可以用于将字符串转换为StringBuffer类型

3. StringBuffer类的添加方法

  • public StringBuffer append(Xxxx xxx)
    • 可以将任意类型的数据传入字符串缓冲区内,并返回该字符串缓冲区本身
    • 在最后拼接
  • public StringBuffer insert(int offset,Xxxx xxx)
    • 在指定的位置处将任意类型的数据插入字符串缓冲区,并返回该字符串缓冲区本身

4. StringBuffer的删除方法

  • public StringBuffer deleteCharAt(int index)
    • 删除指定索引位置的字符,并返回字符串缓冲区本身
  • public StringBuffer delete(int start,int end)
    • 删除指定索引之间的字符串,并返回字符串缓冲区本身
    • 注意:删除时含头不含尾

5. StringBuffer类的替换和反转方法

  • public StringBuffer replace(int start,int end,String str)
    • 将缓冲区内指定索引之间的字符串用指定字符串替换
    • 注意:替换时含头不含尾
  • public StringBuffer reverse()
    • 将字符串反转

6. StringBuffer类的截取方法及其他方法

  • public String substring(int start)
    • 从指定位置截取到末尾,得到的是字符串类型
  • public String substring(int start,int end)
    • 截取指定索引之间的字符串,得到的是字符串类型
    • 注意:截取时含头不含
  • public int capacity()
    • 返回字符串缓冲器的长度(容器长度)
  • public int length()
    • 返回字符串缓冲区中存储的字符元素的长度(实际存储长度)

7. StringBuffer与String间相互转换

  • String——>StringBuffer
    • 通过String Buffer类的有参构造方法
    • 通过String Buffer类的append方法,将字符串添加进一个空字符串缓冲区中
  • StringBuffer——>String
    • 通过String类的有参构造方法
    • 通过StringBuffer类的substring方法
    • 通过String类的toString方法

8. StringBuffer类与StringBuilder类的区别

  • StringBuffer
    • 线程安全的,可以安全的应用于多线程,但是执行速度较慢
  • StringBuilder
    • 线程不安全,不能保持同步,但是执行速度要较快
  • 除此之外StringBuffer与StringBuilder用法基本一样

9. String与StringBuffer作为参数传递

  • String
    • 因为字符串是常量,所以可以看作基本类型的数据进行传递,参数的改变不影响原值的改变
  • StringBuffer
    • 与对象一致,传的是地址,参数的改变会引起原值的改变

新手上路,码字不易,有帮助点个赞呗!

Java常用类—StringBuffer类

文章目录

    • 一、StringBuffer类
        • 1. StringBuffer类概述
        • 2. StringBuffer类的构造方法
        • 3. StringBuffer类的添加方法
        • 4. StringBuffer的删除方法
        • 5. StringBuffer类的替换和反转方法
        • 6. StringBuffer类的截取方法及其他方法
        • 7. StringBuffer与String间相互转换
        • 8. StringBuffer类与StringBuilder类的区别
        • 9. String与StringBuffer作为参数传递

一、StringBuffer类

1. StringBuffer类概述

  • StringBuffer类有什么作用
    • StringBuffer类可以理解为一个字符串容器,或者说是一个字符串缓冲区,在里面可以通过方法改变字符序列的长度和内容,对字符串进行添加和插入等操作
  • String Buffer类和String类操作字符串的区别
    • String类中字符串是常量,一经定义就不可改变,每次拼接插入等操作都会创建新的String对象,费时而且占内存
    • StringBuffer类中可以使用该类提供的方法在原字符序列上进行操作,不会产生新的对象,节省空间和时间

2. StringBuffer类的构造方法

  • public StringBuffer()

    • 无参构造,创默认建一个长度为16的StringBuffer对象(容器),里面什么也没存储
  • public StringBuffer(int capacity)

    • 创建一个StringBuffer对象,长度为指定的长度
  • public StringBuffer(String str)

    • 创建一个StringBuffer对象,并将指定的字符串传递进去,可以用于将字符串转换为StringBuffer类型

3. StringBuffer类的添加方法

  • public StringBuffer append(Xxxx xxx)
    • 可以将任意类型的数据传入字符串缓冲区内,并返回该字符串缓冲区本身
    • 在最后拼接
  • public StringBuffer insert(int offset,Xxxx xxx)
    • 在指定的位置处将任意类型的数据插入字符串缓冲区,并返回该字符串缓冲区本身

4. StringBuffer的删除方法

  • public StringBuffer deleteCharAt(int index)
    • 删除指定索引位置的字符,并返回字符串缓冲区本身
  • public StringBuffer delete(int start,int end)
    • 删除指定索引之间的字符串,并返回字符串缓冲区本身
    • 注意:删除时含头不含尾

5. StringBuffer类的替换和反转方法

  • public StringBuffer replace(int start,int end,String str)
    • 将缓冲区内指定索引之间的字符串用指定字符串替换
    • 注意:替换时含头不含尾
  • public StringBuffer reverse()
    • 将字符串反转

6. StringBuffer类的截取方法及其他方法

  • public String substring(int start)
    • 从指定位置截取到末尾,得到的是字符串类型
  • public String substring(int start,int end)
    • 截取指定索引之间的字符串,得到的是字符串类型
    • 注意:截取时含头不含
  • public int capacity()
    • 返回字符串缓冲器的长度(容器长度)
  • public int length()
    • 返回字符串缓冲区中存储的字符元素的长度(实际存储长度)

7. StringBuffer与String间相互转换

  • String——>StringBuffer
    • 通过String Buffer类的有参构造方法
    • 通过String Buffer类的append方法,将字符串添加进一个空字符串缓冲区中
  • StringBuffer——>String
    • 通过String类的有参构造方法
    • 通过StringBuffer类的substring方法
    • 通过String类的toString方法

8. StringBuffer类与StringBuilder类的区别

  • StringBuffer
    • 线程安全的,可以安全的应用于多线程,但是执行速度较慢
  • StringBuilder
    • 线程不安全,不能保持同步,但是执行速度要较快
  • 除此之外StringBuffer与StringBuilder用法基本一样

9. String与StringBuffer作为参数传递

  • String
    • 因为字符串是常量,所以可以看作基本类型的数据进行传递,参数的改变不影响原值的改变
  • StringBuffer
    • 与对象一致,传的是地址,参数的改变会引起原值的改变

新手上路,码字不易,有帮助点个赞呗!