Java中StringBuilder类常用方法总结

 更新时间:2024年12月23日 09:25:41   作者:喻师傅  
这篇文章主要介绍了Java中StringBuilder类常用方法的相关资料,StringBuilder类是Java中用于频繁修改字符串的可变字符串缓冲区类,它提供了多种方法进行字符串操作,如添加、插入、删除、替换字符等,需要的朋友可以参考下

StringBuilder类常用方法

StringBuilder 是 Java 中常用的字符串缓冲区类,适用于频繁修改字符串的场景。

  • 可变性:StringBuilder 对象是可变的,可以在同一个对象上进行多次修改。
  • 性能: 正因为StringBuilder 是可变的,SB在字符串拼接操作中比 String 更高效,特别是在循环中。
  • 线程不安全:StringBuilder 是线程不安全的,适用于单线程环境。如果需要线程安全的字符串构建器,可以使用 StringBuffer。

1. append(): 将指定字符串、字符、布尔值或其他数据类型的表示追加到字符串缓冲区的末尾

2. insert():在指定位置插入指定字符串、字符、布尔值或其他数据类型的表示。

Tips:insert(i)是插在插入位置之前!

3. replace():用新的字符串替换指定范围内的字符序列。

不包含结束位置下标。

4. delete():删除指定范围内的字符序列。

不包含结束位置下标。

5. deleteCharAt():删除指定索引处的字符。

6. reverse()反转字符串缓冲区中的字符序列。

7. charAt():获取指定索引处的字符。

8. setCharAt():将指定索引处的字符替换为新的字符。

9. substring():返回一个新的字符串,其中包含字符串缓冲区中指定范围内的字符。

不包含结束位置下标。

10. indexOf():返回指定子字符串第一次出现的索引。

11. lastIndexOf():返回指定子字符串最后一次出现的索引。

12. length():返回字符串缓冲区中的字符数。

13. capacity():返回当前容量,即可以存储的字符数。

14. ensureCapacity()确保容量至少等于指定的最小值。

15. toString():将字符串缓冲区中的字符序列转换为字符串。

17. setLength():用于设置当前串的长度。

如果新长度小于当前长度,那么超出部分的字符将会被丢弃;如果新长度大于当前长度,那么超出部分的字符将会以 null 字符填充。

18. equals():比较两个 StringBuilder 对象的引用是否相等。

  • sb1 和 sb2 是两个不同的 StringBuilder 对象,即使它们的内容相同,equals 方法也会返回 false,因为它们的引用不同。

StringBuilder 类中的 equals() 方法并没有重写 Object 类中的 equals() 方法,而是沿用了 Object 类中的 equals() 方法。

实际上比较的是对象的引用是否相等,而不是对象内容是否相等。

如果需要比较两个 StringBuilder 对象的内容是否相等:

(1)先将其转换为 String 类型,然后使用 String 类的 equals() 方法进行比较。

or:

(2)使用 compareTo方法,返回值等于0说明相等🤣🤣🤣

compareTo 方法:按照字典顺序比较两个 StringBuilder 对象的内容。

返回值表示比较的结果:

  • 负数:A的内容小于 B 的内容。
  • 0:A 的内容等于 B 的内容。
  • 正数:A 的内容大于 B 的内容。

总结 

到此这篇关于Java中StringBuilder类常用方法的文章就介绍到这了,更多相关Java StringBuilder类常用方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java调用ChatGPT(基于SpringBoot和Vue)实现可连续对话和流式输出的ChatGPT API

    Java调用ChatGPT(基于SpringBoot和Vue)实现可连续对话和流式输出的ChatGPT API

    这篇文章主要介绍了Java调用ChatGPT(基于SpringBoot和Vue),实现可连续对话和流式输出的ChatGPT API(可自定义实现AI助手),文中代码示例介绍的非常详细,感兴趣的朋友可以参考下
    2023-04-04
  • SpringBoot http请求注解@RestController原理解析

    SpringBoot http请求注解@RestController原理解析

    这篇文章主要介绍了SpringBoot http请求注解@RestController原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • Java中ArrayList的使用详细介绍

    Java中ArrayList的使用详细介绍

    这篇文章主要介绍了Java中ArrayList的使用,本文给大家详细讲述该相关的知识点,并且会通过大量的案例加以说明,需要的朋友可以参考一下
    2022-04-04
  • java数据结构之java实现栈

    java数据结构之java实现栈

    这篇文章主要介绍了java数据结构实现栈,需要的朋友可以参考下
    2014-03-03
  • 基于HttpClient在HTTP协议接口测试中的使用(详解)

    基于HttpClient在HTTP协议接口测试中的使用(详解)

    下面小编就为大家带来一篇基于HttpClient在HTTP协议接口测试中的使用(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • Java实现字符串的分割(基于String.split()方法)

    Java实现字符串的分割(基于String.split()方法)

    Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面这篇文章主要给大家介绍了关于Java实现字符串的分割的相关资料,是基于jDK1.8版本中的String.split()方法,需要的朋友可以参考下
    2022-09-09
  • Java中的值传递和引用传递区别解析

    Java中的值传递和引用传递区别解析

    这篇文章主要介绍了Java中的值传递和引用传递区别解析,引用类型的变量保存引用值,“引用值”指向内存空间的地址,代表了某个对象的引用,而不是对象本身,对象本身存放在该引用值所表示的地址的位置,包含:数组、类、接口,需要的朋友可以参考下
    2023-11-11
  • Java日常练习题,每天进步一点点(9)

    Java日常练习题,每天进步一点点(9)

    下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-07-07
  • idea创建springboot项目和springcloud项目的详细教程

    idea创建springboot项目和springcloud项目的详细教程

    这篇文章主要介绍了idea创建springboot项目和springcloud项目方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Java中RabbitMQ消息队列的交换机详解

    Java中RabbitMQ消息队列的交换机详解

    这篇文章主要介绍了Java中的RabbitMQ交换机详解,消息队列是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成,是在消息的传输过程中保存消息的容器,需要的朋友可以参考下
    2023-07-07

最新评论