前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java中常用的API(三)——缓冲区字符串

Java中常用的API(三)——缓冲区字符串

作者头像
roobtyan
发布2019-02-21 15:51:35
3920
发布2019-02-21 15:51:35
举报

前两节中分别介绍了Object和String,这一节主要介绍StringBuffer和StringBuilder。

StringBuffer

由于String是不可变的,所以导致String对象泛滥,在频繁改变字符串对象的应用中,需要使用可变的字符串缓冲区类。 StringBuffer有如下特点:

代码语言:javascript
复制
· 默认缓冲区的容量是16。
· StringBuffer  : 线程安全的所有的缓冲区操作方法都是同步的。效率很低。

1. 添加方法

代码语言:javascript
复制
StringBuffer("jack")    在创建对象的时候赋值
append()                在缓冲区的尾部添加新的文本对象
insert()                在指定的下标位置添加新的文本对象

例子如下:

代码语言:javascript
复制
StringBuffer sb = new StringBuffer("jack");
sb.append(true);
sb.append('a');
sb.append(97).append(34.0).append(new char[]{'o','o'});   // 链式编程,输出结果是:jacktruea9734.0oo
System.out.println( sb.toString() );          // 输出缓冲区的中文本数据
sb = new StringBuffer("jack");
sb.insert( 2, "java" );                       // 输出结果为:jajavack
System.out.println( sb.toString() );  

2. 查看方法

代码语言:javascript
复制
toString() 返回这个容器的字符串
indexOf(String str) 返回第一次出现的指定子字符串在该字符串中的索引。
substring(int start) 从开始的位置开始截取字符串

3. 修改方法

代码语言:javascript
复制
replace(int start,int end,String str)  
    使用给定 String 中的字符替换此序列的子字符串中的字符。
    该子字符串从指定的 start 处开始,一直到索引 end - 1 处的字符
setCharAt(int index,char ch)  指定索引位置替换一个字符

4. 删除方法

代码语言:javascript
复制
delete(int start,int end)
    清空缓冲区:delete(0,sb.length())
deleteCharAt(int index)删除特定位置的元素

5. 反序方法 reverse() 把字符串反序输出

StringBuilder

StringBuilder 是JDK1.5之后提出的,线程不安全,但是效率要高。用法与StringBuffer类似。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018年02月08日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • StringBuffer
  • StringBuilder
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档