关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

String、StringBuffer和StringBuilder的各自用法

发布时间:2020-08-07 18:55:28

应用场景

String适用于少量的字符串操作的情况

StringBuilder适用于单线程下在字符缓冲区进行大量操作的情况

StringBuffer适用多线程下在字符缓冲区进行大量操作的情况

java中常用的String方法

1、 字符串的长度

String a="hello world!";System.out.println(a.length());12

2、取得特定下标的字符

System.out.println(a.charAt(1));1

3、截取多个字符并由其他字符串接收

char[] b=new char[10];a.getChars(0,5,b,4);System.out.println(b);输出结果:hello 
1234

4、将字符串变成一个byte数组

byte c[]=a.getBytes();System.out.println(new String(c));输出结果:hello world!123

5、将字符串变成一个字符数组

char[] d=a.toCharArray();System.out.println(d);输出结果:hello world!123

6、比较两个字符串是否相等,前者区分大小写,后者不区分

String e="Hello World!";System.out.println(a.equals(e));System.out.println(a.equalsIgnoreCase(e));输出结果:falsetrue123456

7、判定字符串是否是特定开头或结束

System.out.println(a.startsWith("ee"));System.out.println(a.endsWith("ld!"));输出结果:falsetrue12345

8、连接两个字符串

String f="你好";System.out.println(a.concat(f));输出结果:hello world!你好123

9、截取字符串

System.out.println(a.substring(0,5));System.out.println(a.substring(6));输出结果:0下标开始位置,5结束位置(5-1),6开始位置到结束
hello
world!12345

10、前者查找一个字符或者字符串第一次出现的地方,后者查找一个字符或字符串最后一次出现的地方

System.out.println(a.indexOf("o"));System.out.println(a.lastIndexOf("o"));输出结果:471234

11、替换

System.out.println(a.replace(a,f));System.out.println(a.replace(a,"Hello"));System.out.println(f.replace("你","大家"));输出结果:
你好
Hello
大家好1234567

StringBuffer和StringBuilder的方法

1、追加字符串

StringBuffer s = new StringBuffer();s.append("sad");12

2、返回指定索引位置的字符,索引从0开始

StringBuffer s = new StringBuffer();s.append("sad");System.out.println(s.charAt(2));123

3、删除指定索引位置的字符

StringBuffer s = new StringBuffer();s.append("sad");s.deleteCharAt(1);System.out.println(s);//输出为:sd1234

4、删除从开始索引到结束索引的字符串

StringBuffer s = new StringBuffer();s.append("sad");s.delete(0,1);System.out.println(s);//输出为:ad1234

5、在指定索引位置之前插入字符串

StringBuffer s = new StringBuffer();s.append("sad");s.insert(0,'t');System.out.println(s);//输出为:tsad1234

6、返回指定字符串的开始字符索引位置,还可以从某个字符索引位置开始向后匹配,没有找到匹配的就会返回-1

StringBuffer s = new StringBuffer();s.append("aaabbb");System.out.println(s.indexOf("ab"));//输出为:2//还可从指定位置开始匹配System.out.println(s.indexOf("ab",3));//输出为:-1System.out.println(s.indexOf("tt"));//输出为:-1 123456

7、和indexOf()的用法一样,只不过是从后往前匹配,也支持从指定索引开始从后往前去匹配

StringBuffer s = new StringBuffer();s.append("aaabbb");System.out.println(s.lastIndexOf("ab"));//输出为:2//还可从指定位置开始从后向前匹配System.out.println(s.lastIndexOf("ab",4));//输出为:2System.out.println(s.lastIndexOf("tt"));//输出为:-1123456

8、反转字符串

StringBuffer s = new StringBuffer();s.append("aaabbb");System.out.println(s.reverse());//输出为:bbbaaa123

String、StringBuffer、StringBuilder的区别

1.从性能、速度方面
StringBuilder > StringBuffer > String

2.从线程安全的角度去看
StringBuffer是线程安全的,而StringBuilder是线程不安全的



相关阅读

云备份有哪些主要优点?初步认识什么是云备份?大数据采集与数据采集有什么区别?数据采集的定义是什么?云存储技术之集群存储云存储的相关性能要求关于“云”的相关基础认识云主机与虚拟主机有什么区别?IDC机房监控设备服务标准IDC机房服务维护内容IDC基本业务产品常识服务器的访问的速度由哪些因素决定?《手机卡顿 - 办法新招》关于服务器托管有些什么功能?服务器托管应该注意哪些事项?服务器的托管有哪些优势?服务器租用和服务器托管的相关基础知识三级分销中薪金报酬计划之矩阵制的缺陷三级分销商城搭建时需要掌握的技术Hadoop主要有下面几个优点云计算的数据组织结构云计算的部署模型关于块存储的特性及其优缺点面向对象存储(OOS)的特点及适合应用的类型云计算的三种类型云计算中文件系统操作和namespace的关系关于云计算的优势对于Namenode和Datanode的划分关于Hadoop HDFS的设计思想关于云服务的优缺点云服务的特点及其市场价值云计算的主要特征云服务的好处有哪些?什么是对象存储对象?云存储有哪些特点?云存储系统所具有的几大优势云数据库具有一些什么特性?关于云服务器的特点有哪些?云服务器的架构体系及其优势云南RTK网络应用常见的问题及解决办法关于前端开发的优化问题阿里云域名转入失败常见问题及处理方法关于云计算的概念计算机网络技术基础知识云计算的优点和缺点服务器搭建计算机网络安全常见的危险因素有哪些?什么是内容分发网络(CDN)?云南服务器搭建和数据备份,恢复云南云服务器的三大作用人工智能AI初认识云计算服务的6个优势云南服务器托管有哪些注意事项Tomcat的特点云计算的三个优点选取小程序服务商时的注意事项不同数据库的不同区别什么是VPS主机它的优势是什么?你知道5G的优点和缺点吗?云南三级分销商城开发的目的和对企业的价值云南网站优化的3个方面和网页的优化我们晋级拉!!!云南网站链接维护的具体方法云南网站应该如何做优化云南网站维护的主要内容云南云服务器和虚拟主机的操作区别云服务器部署和注意点云南服务网器托管应该选择怎样的机房云南虚拟建设网站主机的优点和缺点云服务器和物理服务器的区别云服务器有哪些优势C# List用法 List介绍C#和Java有什么不同PHP的优点和缺点智慧新餐饮和传统餐饮的区别云数据库对比传统数据库有哪些优点裸金属服务器是什么它的作用是什么白盒测试的特点js中添加scriptjs中[]、{}、()的用法和区别php 字符串的整型转换ipa如何安装到苹果手机邓白氏码是什么?iOS开发者账号到期续费教程在C#中有哪些引用类型和值类型小程序搭建时需要准备些什么云数据库对比传统数据库的优势什么样的企业适合SEMjs中的常见错误C#数据类型转换字符串与数值之间的转换C#的几种循环遍历方式物联网是什么它和互联网又有什么区别?云南网站建设时应该注意些什么云计算是什么?它能干些什么?展望未来5G会给我们的生活带来哪些影响C#常见的几种报错类别C#的学习流程有哪些dedecms 绑定二级域名的正确方法SEM是什么它和SEO之间是什么关系?云南新餐饮料模式是如何运行的?云南网站建设初期应该注意哪些问题
/template/Home/Zkeys/PC/Static