StringBuilder怎么在Java中使用

介绍

本篇文章给大家分享的是有关StringBuilder怎么在Java中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

StringBuilder简介

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

性能

StringBuilder对字符串的操作是直接改变字符串对象本身,而不是生成新的对象,所以新能开销小。
与StringBuffer相比StringBuilder的性能略高(15% ~ 30%),StringBuffer为保证多线程情况下的安全性(同步加锁)而牺牲了性能,以时间来换取安全。而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对象的方法

数据的种类可以有:

类型ObjectStringStringBufferCharSequencechar [] booleancharintlongfloatdouble

1. builder.append ()

作用:追加数据

 builder.append (“just"); 

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

2. builder.insert ()

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

builder.insert(0,,“你),

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

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

3. builder.deleteCharAt ()

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

builder.deleteCharAt(指数);

4. builder.delete ()

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

builder.delete (beginIndex, endIndex);

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

5. builder.toString ()

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

builder.toString ();

6. builder.reverse ()

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

builder.reverse ();

<强>注意

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

以上就是StringBuilder怎么在java中使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

StringBuilder怎么在Java中使用