JAVA - 字符串工具类StringBuilder和StringBuffer

文章目录

目录

文章目录

前言

二.常用方法演示

1.append()用于将指定的字符串添加到当前StringBuilder对象的末尾

2.delete():用于删除StringBuilder对象中指定位置的字符。

 3.insert():用于在指定位置插入指定字符串。

 4.replace():用于替换指定位置的字符或字符串。

5.reverse():用于将StringBuilder对象中的字符顺序反转。 

 3.构造方法

 1.StringBuilder() 创建一个空的StringBuilder对象。

2.StringBuilder(int capacity) 创建一个具有指定初始容量的StringBuilder对象。 

 3.StringBuilder(String str) 创建一个包含指定字符串内容的StringBuilder对象。

4.StringBuilder和StringBuffer的区别

总结



前言

大家好,我是最爱兽奶,今天给大家介绍一下字符串的工具类StringBuilder和StringBuffer


一.StringBuilder是什么?

StringBuilder就是处理String的一个工具类

常用方法

  1. append():用于将指定的字符串添加到当前StringBuilder对象的末尾。

  2. delete():用于删除StringBuilder对象中指定位置的字符。

  3. insert():用于在指定位置插入指定字符串。

  4. replace():用于替换指定位置的字符或字符串。

  5. reverse():用于将StringBuilder对象中的字符顺序反转。

二.常用方法演示

1.append()用于将指定的字符串添加到当前StringBuilder对象的末尾


2.delete():用于删除StringBuilder对象中指定位置的字符。

 3.insert():用于在指定位置插入指定字符串。

 4.replace():用于替换指定位置的字符或字符串。

5.reverse():用于将StringBuilder对象中的字符顺序反转。 

 3.构造方法

 

1.StringBuilder() 创建一个空的StringBuilder对象。

2.StringBuilder(int capacity) 创建一个具有指定初始容量的StringBuilder对象。

3.StringBuilder(String str) 创建一个包含指定字符串内容的StringBuilder对象。

 1.StringBuilder() 创建一个空的StringBuilder对象。

我们没有指定大小,那么默认空间是多大呢?

2.StringBuilder(int capacity) 创建一个具有指定初始容量的StringBuilder对象。 

 

 3.StringBuilder(String str) 创建一个包含指定字符串内容的StringBuilder对象。

千万不要想复杂了!! StringBuilder对象直接可以看做是可以操作的字符串 ,如果你对字符串有修改目的,那么你直接可以创建StringBuilder对象,因为字符串是不能被修改的

4.StringBuilder和StringBuffer的区别

StringBuilder和StringBuffer都是用于处理字符串的类,方法基本相同,它们的主要区别在于线程安全性和性能。

StringBuffer : 是线程安全的,因为它的方法是同步的,但是这也导致了它的性能较差。

StringBuilder是非线程安全的,但是它的性能比StringBuffer要好,因为它的方法都是非同步的。

因此,在单线程环境下,建议使用StringBuilder;在多线程环境下,建议使用StringBuffer

在没学到多线程之前,所用方法基本上都是单线程,直接可以用StringBuilder

 关于多线程的知识后面会讲到,敬请期待吧~~

总结

以上就是今天要讲的内容,本文简单介绍了StringBuilder的使用,大家应重点去掌握方法的使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/20766.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

中睿天下成为国家信息安全漏洞库(CNNVD)一级技术支撑单位

近日,中国信息安全测评中心公布2023年度国家信息安全漏洞库技术支撑单位名单,中睿天下荣获中国信息安全测评中心颁发的“国家信息安全漏洞库(CNNVD)技术支撑单位等级(一级)证书”,成为该领域最高…

提高运算放大器输出功率

运算放大器的串联:如何同时实现高精度和高输出功率 复合放大器 复合放大器由两个单独放大器组合而成,分别具有不同的特性。 图1所示就是这种结构。放大器1为低噪声精密放大器ADA4091-2。 在本例中,放大器2为AD8397,具有高输出功率&#xff…

【游戏逆向】某某游戏邮件遍历分析

邮件常常用来远程交易,这样可以节省交易时间,并且降低数据的需求。邮件遍历的分析,一般是以邮件名字,邮件数量等为突破口。不过有些游戏的邮件名字并不存放在邮件对象中,或者在对象中也不会改变邮件的本地显示&#xf…

全网独家首发最牛最全面的JMeter使用BeanShell断言

BeanShell简介 BeanShell是使用Java语法的一套脚本语言,在JMeter的多种组件中都有BeanShell的身影,如: 定时器:BeanShell Timer前置处理器:BeanShell PreProcessor采样器:BeanShell Sampler后置处理器&am…

内网渗透(七十二)之域权限维持之伪造域控

伪造域控 2022年1月10日,国外安全研究员Kaido发文称发现了一种新的伪造域控方式,安全研究员只需要新建一个机器账户,然后修改机器账户的UserAccountControl属性为8192。活动目录就会认为这个机器账户就是域控,然后就可以使用这个新建的机器账户进行DCSync操作了。由于修改…

(2020)End-to-end Neural Coreference Resolution论文笔记

2020End-to-end Neural Coreference Resolution论文笔记 Abstract1 Introduction2 Related Work3 Task4 Model4.1 Scoring Architecture4.2 Span Representations5 Inference6 Learning7 Experiments7.1 HyperparametersWord representationsHidden dimensionsFeature encoding…

Maven基础使用

Maven 学习目标 理解Maven的用途掌握Maven的基本操作掌握Maven如何创建Web项目 Maven是什么 面临问题 在学习Maven之前,我们先来看一下我们现在做的项目都有哪些问题。假设你现在做了一个crm的系统,项目中肯定要用到一些jar包,比如说myb…

分布式锁解决方案_基于Redisson实现的分布式锁实现

Redisson介绍: https://github.com/redisson/redisson/wiki Redisson - 是一个高级的分布式协调Redis客服端,能帮助用户在分布式环境中轻松实现一些Java的对象,Redisson、Jedis、Lettuce是三个不同的操作 Redis 的客户端,Jedis、…

element-plus 问题

对话框内部下拉框会在左上角 在对话框内打开下拉框后点击关闭按钮,尚未关闭的下拉框会在左上角出现(或闪现) 解决方案: popper-append-to-body 此方法失效,改用 :teleported"false" teleported:…

思维中的世界

⾝体的空间,以⾏为为导向的空间 感官⼩矮⼈ 当我们观察特定的事物时,⼤脑的相应区域就会被“点亮”,并变得 活跃起来。 ⾝体映射到⼤脑上,映射到“感官⼩矮⼈”上, 即从左⽿延伸,过⼤脑顶⾻,…

心法利器[84] | 最近面试小结

心法利器 本栏目主要和大家一起讨论近期自己学习的心得和体会,与大家一起成长。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。 2022年新一版的文章合集已经发布,累计已经60w字了,获取方式看这里&…

RT-Thread 2. GD32在 RT-Thread Nano上添加控制台与 FinSH

本篇文档分为两部分: 第一部分是添加 UART 控制台(实现打印):用来向控制台对接的终端输出打印信息;该部分只需要实现两个函数,串口初始化和系统输出函数,即可完成 UART 控制台打印功能。 第二部…

全景 I 0基础学习VR全景制作,第26章热点功能-文档

本期为大家带来蛙色VR平台,热点功能—文档功能操作。 功能位置示意 热点,指在全景作品中添加各种类型图标的按钮,引导用户通过按钮产生更多的交互,增加用户的多元化体验。 文档热点,即点击热点后会嵌入式弹出所选文档…

基于Java+SpringMVC+vue+element实现前后端分离校园失物招领系统详细设计

基于JavaSpringMVCvueelement实现前后端分离校园失物招领系统详细设计 博主介绍:5年java开发经验,专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获…

WPF MaterialDesign 初学项目实战(3)动态侧边栏

其他文章 WPF MaterialDesign 初学项目实战(0):github 项目Demo运行 WPF MaterialDesign 初学项目实战(1)首页搭建 WPF MaterialDesign 初学项目实战(2)首页导航栏样式 创建侧边栏实体类 新建MenuBar文件…

基于MWORKS的电动汽车电平衡分析

1 引言 随着电动汽车的快速发展、电池技术的进步和智能电力管理系统的应用,电动汽车电平衡已经成为了电动汽车技术研究中的重要问题之一。 电动汽车电平衡是指车辆发电机、蓄电池、整车用电器在一定时间内的电能供给与消耗达到平衡状态。如果车辆电能产生与消耗无法…

国产游戏引擎,竟然用来搞民航

​本文源自量子位 | 公众号 QbitAI 只是给飞行员做个“装备”,竟然突破了国内民用航空领域的一大技术难题?! 这是一群游戏技术开发者的真实经历。 他们用自研游戏引擎开发了一个飞行模拟软件,能够第一视角模拟飞行员起飞、着陆…

mysql 分组语句测试

建表 建表语句: CREATE TABLE student( id int not null, name char(12), sex char(1) ); 预置数据 insert into student values(1, wh, 1); insert into student values(2, wh1, 0); insert into student values(3, zyx, 0); commit; 增加字段 alt…

Linux -- 进程信号

文章目录 1. 信号量1.1 进程互斥概念1.2 认识信号量 2. 信号入门2.1 信号概念2.2 见一见2.3 signal()系统调用2.4 宏定义信号 3. 信号产生方式3.1 键盘产生信号3.2 系统调用产生信号3.3 软件条件产生信号3.4 硬件异常产生信号3.5 Core dump 4. 阻塞信号4.1 相关概念4.2 信号在内…

1066 Root of AVL Tree(51行代码+超详细注释)

分数 25 全屏浏览题目 切换布局 作者 CHEN, Yue 单位 浙江大学 An AVL tree is a self-balancing binary search tree. In an AVL tree, the heights of the two child subtrees of any node differ by at most one; if at any time they differ by more than one, rebala…