Java StringBuilder的用法示例

  • 更新时间:2022-06-14 14:44:48
  • 编辑:容珍瑞
给网友们整理Java相关的编程文章,网友高梦竹根据主题投稿了本篇教程内容,涉及到java、stringbuilder用法、stringbuilder使用、stringbuilder输出、Java StringBuilder用法相关内容,已被773网友关注,如果对知识点想更进一步了解可以在下方电子资料中获取。
《Java线程与并发编程实践》配套资源
  • 大小:6.52 MB
  • 发布人:金明轩
  • 下载:Java

Java StringBuilder用法

StringBuilder简介

StringBuilder 最早出现在JDK1.5,是一个字符拼接的工具类,它和StringBuffer一样都继承自父类AbstractStringBuilder,在AbstractStringBuilder中使用char[] value字符数组保存字符串,但是没有用final关键字修饰,所以StringBuilder是可变的。

性能

StringBuilder 对字符串的操作是直接改变字符串对象本身,而不是生成新的对象,所以新能开销小。
与StringBuffer相比StringBuilder的性能略高(15%~30%),StringBuffer为保证多线程情况下的安全性(synchronize加锁)而牺牲了性能,以时间来换取安全。而StringBuilder则没有保证线程的安全,从而性能略高于StringBuffer。

使用场景

频繁使用字符串拼接的时候可以用StringBuilder(推荐)或者StringBuffer。

用法

一、StringBuilder对象的创建(下文builder是StringBuilder创建出来的对象)

1.常规创建

StringBuilder builder = new StringBuilder();

2.在创建的时候添加初始字符串

StringBuilder builder = new StringBuilder("abc");

3.在创建的时候添加初始长度

StringBuilder builder = new StringBuilder(初始长度);

这里需要注意的是如果在StringBuilder的对象创建时没有指定长度,StringBuilder对象会自动生成一个16位的字符数组

二、StringBuilder对象的方法

数据的种类可以有:


类型
Object
String
StringBuffer
CharSequence
char[]
boolean
char
int
long
float
double

1.builder.append()

作用:追加数据

		builder.append("just");

在加入新字符串时,不会在内存中新开辟字符串空间,只是给原有的字符串尾部加入新字符串

2.builder.insert()

作用:向指定位置插入数据

builder.insert(0, "you");

每次加入新字符串之后都会改变字符串中每个字符的地址

插入后原始指定位置的数据向后移

3.builder.deleteCharAt()

作用:删除指定位置的数据

builder.deleteCharAt(index);

4.builder.delete( )

作用:删除指定范围的数据左闭右开

builder.delete(beginIndex, endIndex);

范围:从开始位置到结束位置的前一个

5.builder.toString()

作用:将对象中的数据以字符串的形式返回

builder.toString();

6.builder.reverse()

作用:将对象中的数据反转

builder.reverse();

注意

原始数组长度不够时,在传入新字符串时会增加数组长度,并将原来的数据传到新数组中,反复添加遇到这种情况时会对内存造成损耗,为了避免这种情况,可以在创建时提前给StringBuilder对象设置长度:StringBuilder builder = new StringBuilder(初始长度)。

总结

到此这篇关于Java StringBuilder用法的文章就介绍到这了,更多相关Java StringBuilder用法内容请搜索java学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持java学习网!

相关下载

  • 从初学到精通系列:Java从初学到精通

    大小:68.46MB
  • Java开发实战1200例 (第Ⅰ卷)

    大小:57.78MB
  • 面向对象软件工程:使用UML、模式与 Java

    大小:59.5 MB

相关教程

  • Java在利用反射条件下替换英文字母中的值

    给网友朋友们带来一篇关于java的教程,今天小编就为大家分享一篇关于Java在利用反射条件下替换英文字母中的值,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    发布时间:2022-06-11主题:

    查看详情
  • Java构建JDBC应用程序的实例操作

    为网友们分享了关于Java的教程,在本篇文章里小编给大家整理了一篇关于Java构建JDBC应用程序的实例操作,有兴趣的朋友们可以学习参考下。

    发布时间:2022-06-12主题:Java构建JDBC应用的操作

    查看详情
  • Java并发编程学习之Unsafe类与LockSupport类源码详析

    Java并发编程学习之Unsafe类与LockSupport类源码详析

    这篇文章主要给大家介绍了关于Java并发编程学习之Unsafe类与LockSupport类源码的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面

    发布时间:2022-06-11主题:

    查看详情
  • Java后台实现浏览器一键导出下载zip压缩包

    给网友们整理关于Java的教程,这篇文章主要为大家详细介绍了Java后台实现浏览器一键导出下载zip压缩包,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    发布时间:2022-06-12主题:

    查看详情
  • Java迪杰斯特拉算法实现查找最短距离的实现

    Java迪杰斯特拉算法实现查找最短距离的实现

    给大家整理了关于Java的教程,这篇文章主要介绍了Java 迪杰斯特拉算法实现查找最短距离的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习

    发布时间:2022-06-12主题:

    查看详情
  • JavaMail发送(带图片和附件)和接收邮件实现详解(四)

    JavaMail发送(带图片和附件)和接收邮件实现详解(四)

    给大家整理一篇关于Java的教程,这篇文章主要为大家详细介绍了JavaMail带图片和附件的发送和接收邮件实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    发布时间:2022-06-12主题:

    查看详情
  • java swagger ui 添加header请求头参数的方法

    java swagger ui 添加header请求头参数的方法

    给网友们整理关于java的教程,今天小编就为大家分享一篇java swagger ui 添加header请求头参数的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    发布时间:2022-06-11主题:

    查看详情
  • 深入理解Java注解及实例

    给大家整理了关于Java的教程,这篇文章主要介绍了深入理解 Java注解及实例的相关资料,希望通过本文大家能够掌握java注解的知识,需要的朋友可以参考下

    发布时间:2022-06-14主题:

    查看详情
  • Java Exception异常全方面分析

    Java Exception异常全方面分析

    给网友们整理关于java的教程,异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

    发布时间:2022-06-11主题:Java 异常

    查看详情

用户留言