首页 > 其他分享 >StringBuilder类分享(1)

StringBuilder类分享(1)

时间:2023-08-29 19:01:32浏览次数:37  
标签:return int StringBuilder 分享 super public append

一、StringBuilder说明

StringBuilder是一个可变的字符序列。这个类提供了一个与StringBuffer兼容的API,但不保证同步,即StringBuilder不是线程安全的,而StringBuffer是线程安全的。显然,StringBuilder要运行的更快一点。

这个类被设计为在字符串缓冲区所在的地方作为StringBuffer的临时替代品使用由单个线程使用(通常是这样)。在可能的情况下,建议优先使用该类而不是StringBuffer,因为在大多数实现中它会更快。

二、StringBuilder常用方法

(1)无参构造函数

public StringBuilder() {
        super(16); // 调用父类的构造方法,并默认初始化长度为16
}
其中super(16)表示:

AbstractStringBuilder(int capacity) {
    value = new char[capacity]; // 初始化一个长度为16的char型可变数组
}

(2)有参构造(两种)

public StringBuilder(String str) {
        super(str.length() + 16); // 通常调用父类的构造方法,但参数为传入字符串的长度+16
        append(str); // 将入参str添加到stringbuilder中
    }

public StringBuilder(CharSequence seq) { // CharSequence 是一个描述字符串结构的接口,在这个接口里一共有三个常用的子类:String,StringBuffer,StringBuilder
        this(seq.length() + 16);
        append(seq);
    }

(3)添加方法

public StringBuilder append(StringBuffer sb) {
        super.append(sb);
        return this;
    }

@Override
public StringBuilder append(CharSequence s) {
        super.append(s);
        return this;
    }
   
@Override
public StringBuilder append(CharSequence s, int start, int end) {
        super.append(s, start, end);
        return this;
    }

@Override
public StringBuilder append(char[] str) {
        super.append(str);
        return this;
    }


@Override
public StringBuilder append(char[] str, int offset, int len) {
        super.append(str, offset, len);
        return this;
    }

@Override
public StringBuilder append(boolean b) { // 这里的入参还可以替换为char,int,float,long,double
        super.append(b);
        return this;
    }

(4)删除方法

@Override
public StringBuilder delete(int start, int end) {
        super.delete(start, end); // 删除[start, end)区间内的字符串
        return this;
    }

@Override
public StringBuilder deleteCharAt(int index) { // 删除指定索引位置的字符串
        super.deleteCharAt(index);
        return this;
    }

StringBuilder类分享(1)_父类

1)

标签:return,int,StringBuilder,分享,super,public,append
From: https://blog.51cto.com/u_15974582/7279357

相关文章

  • 技术分享 | RCU :内核小“马达”,让你的产品弯道超车
    在上一篇文章《编程界也内卷?浅析“斜杠青年”RCU 》中,鼎道智联带着大家一起认识了并行编程,了解了什么是RCU,相信大家已经对RCU的特点和如何实现Reader无锁有了一定的了解。今天就带着大家继续从RCU的实现入手,一起看看在实际操作中,并行编程是如何实现的!RCU的实现原理可以概......
  • 杂题分享
    计数P6672[清华集训2016]你的生命已如风中残烛题意给你一个长度为\(m\)的序列\(W\),其中\(n\)个\(w_i\geq1\),\(\Sigmaw_i[w_i\geq1]=m\),拿到一个\(w_i\)可以往后拿\(w_i\)个数,求在\(m!\)中有多少种排列可以拿到第\(m+1\)的数。简化我们将每个数减一,原......
  • [java基础知识复习] Java基础知识总结分享一
    写代码:1,明确需求。我要做什么?2,分析思路。我要怎么做?1,2,3。3,确定步骤。每一个思路部分用到哪些语句,方法,和对象。4,代码实现。用具体的java语言代码把思路体现出来。学习新技术的四点:1,该技术是什么?2,该技术有什么特点(使用注意):3,该技术怎么使用。demo4,该技术什么时候用?test。————......
  • 标题:工作中如何保持稳定的情绪?我的看法和经验分享
    近期发生的新闻热点再度引发公众对稳定情绪和心理健康的关注。有时候我们遇到的最大的敌人,不是运气也不是能力,而是失控的情绪和口无遮拦的自己。如何在工作中保持稳定的情绪?谈谈你的看法。 简介:在职场中,我们经常面对各种挑战和压力,这往往会引发情绪的波动和不稳定。本文将分享我......
  • 开发了一个json格式化工具,使用js格式化json的代码分享
    今天给大家介绍一下如何通过js来格式化json。假设json字符串是:{"name":"刘德华","age":25.2,"birthday":"1990-01-01"}我们使用的是Js的JSON方法先把json字符串转为json对象,方法如下:varjsonString='{"name":"刘德华","age":35.2......
  • [Android 分享] [教程] 微信抓不到包?根本不存在!----一招搞定微信内置浏览器抓包
    [教程]微信抓不到包?根本不存在!----一招搞定微信内置浏览器抓包-『移动安全区』-吾爱破解-LCG-LSG|安卓破解|病毒分析|www.52pojie.cn 所需工具1.一部手机2.一台电脑3.一条数据线情景模拟某个网页只能在微信中打开,但我想要抓包调试怎么办?1.HttpCannary(小......
  • Python分享之redis(3)
    3、List操作redis中的List在在内存中按照一个name对应一个List来存储lpush(name,values)#在name对应的list中添加元素,每个新的元素都添加到列表的最左边r.lpush("list_name",2)r.lpush("list_name",3,4,5)#保存在列表中的顺序为5,4,3,2rpush(name,values)#同lpush,但每个新的元素......
  • 【专题】2022品牌营销决策解决方案报告PDF合集分享(附原数据表)
    全文链接:https://tecdat.cn/?p=33511根据报告合集显示,在消费者的亲友分享、社交平台、订单评价等环节,00后表现出活跃的参与度,而90后和95后在部分环节也较为活跃。相比之下,70后和80后在分享中的参与度最低,主要以亲友分享为主。阅读原文,获取专题报告合集全文,解锁文末335份品牌营销......
  • 技术实践|Hive数据迁移干货分享
    导语Hive是基于Hadoop构建的一套数据仓库分析系统,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能。它的优点是可以通过类SQL语句快速实现简单的MapReduce统计,不用再开发专门的MapReduce应用程序,从而降低学习成本,十分适合对数据仓库进行统计分析。 近几年,随......
  • 【专题】2023品牌内容营销洞察报告PDF合集分享(附原数据表)
    全文链接:https://tecdat.cn/?p=33511根据报告合集显示,在消费者的亲友分享、社交平台、订单评价等环节,00后表现出活跃的参与度,而90后和95后在部分环节也较为活跃。相比之下,70后和80后在分享中的参与度最低,主要以亲友分享为主。阅读原文,获取专题报告合集全文,解锁文末335份品牌营销......