开发者社区> 小黎的培培笔录.> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

(JAVA):字符串的修改------StringBuffer类的常见API

简介: (JAVA):字符串的修改------StringBuffer类的常见API
+关注继续查看

目录

前言:

1、charAt() 方法

声明:

功能:

代码示例:

2、indexOf() 方法

 代码示例:

3、delete() 方法

声明:

功能:

补充:

代码示例:

分析: 

4、replace()方法

声明:

功能:

代码示例:

分析: 

5、reverse() 方法 

声明:

功能:

代码示例:

6、setCharAt() 方法 

声明:

功能:

代码示例:

注意:这种写法不对!

7、小结:



前言:

image

                                        努力做到尽善尽美

        在尘世中,没有天生完美的人。但你只要每天不断进取,做到德业兼修,最终会成为尽善尽美的人,获得名声显赫的成就。完美的人应该具备品位高雅、头脑清晰、意志坚定、判断精准的特征。因为或多或少的欠缺,有的人无法达到完美。完美的人总是在语言中显露着智慧,在行动中流露着谨慎,人们愿意与贤能通达之人结交,喜欢与他们同行。



1、charAt() 方法

声明:

        char charAt(int index)

功能:

        返回此序列中指定索引处的 char 值。

代码示例:

StringBuffer str2 = new StringBuffer("the stringbuffer search class"); 
 
System.out.println(str2.charAt(5)); //输出索引位置5上的字符t


2、indexOf() 方法

代码示例:

StringBuffer str2 = new StringBuffer("the stringbuffer search class"); //初始化
 
System.out.println(str2.indexOf("search")); //输出字符串search的索引位置
 
System.out.println(str2.indexOf("s",10)); //从索引位置10开始寻找下一个s所在的位置

结果:

        17

        17


3、delete() 方法

声明:

        delete(int start, int end)

功能:

        移除此序列的子字符串中的字符。 

补充:

        deleteCharAt() 方法:删除指定索引位置上的字符

代码示例:

StringBuffer str2 = new StringBuffer("the stringbuffer search class"); //初始化
 
System.out.println(str2.delete(0,3)); //删除索引0到索引3位置上的字符
 
System.out.println(str2.deleteCharAt(5)); //删除索引位置5上的字符

运行结果:

                 stringbuffer search class

                 strigbuffer search class

分析: 

        StringBuffer 中的delete 方法能够很灵活地删除字符串中的数据,配合insert()方法可以快速的实现字符串的修改操作。从结果看,StringBuffer对象的修改是持续的。


4、replace()方法

声明:

        replace(int start, int end, String str) 

功能:

        使用给定 String 中的字符替换此序列的子字符串中的字符。

代码示例:

StringBuffer str2 = new StringBuffer("strigbuffer search class"); //初始化
 
System.out.println(str2.replace(0,2,"who")); //把索引0到索引2的字符用who代替

运行结果:

                whotrigbuffer search class

分析: 

        StringBuffer 的replace方法与String 的replace 方法有所不同。在String中,replace()方法会替换符合条件的所有字符,其参数是两个字符串:一个匹配项和一个匹配后需要将其匹配项替换的字符串。在StringBuffer 中,replace() 则是三个数,分别是起始索引位置、结束索引位置和需要将此索引区间替换的字符串项。在需要替换预定格式的字符串的固定位置序列时非常方便。


5、reverse() 方法 

声明:

        reverse(string str)

功能:

        将字符串str进行反转。

代码示例:

StringBuffer str2 = new StringBuffer("whotrigbuffer search class"); //初始化
 
System.out.println(str2.reverse()); //将str2中的数据进行翻转

运行结果:

                ssalc hcraes reffubgirtohw


6、setCharAt() 方法 

声明:

                void setCharAt(int index, char ch)

功能:

                将给定索引处的字符设置为 ch

代码示例:

StringBuffer str2 = new StringBuffer("ssalc hcraes reffubgirtohw");
 
str2.setCharAt(0,'A');
System.out.println(str2); //将0索引位置的字符替换为A

运行结果:

                Asalc hcraes reffubgirtohw

注意:这种写法不对!

System.out.println(str2.setCharAt(0,'A'));

结果:所以只能分开写,不能合上。

image


7、小结:

        在StringBuffer的输出中不难看出,它对于字符串的操作也是“含头不含尾”的处理方式。在替换索引位置0至索引位置2 的操作中,替换操作只替换了索引位置0和索引位置1。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
深度剖析Java中StringBuffer与StringBuider两个类的异同
深度剖析Java中StringBuffer与StringBuider两个类的异同
14 0
Java——StringBuffer类中常用方法的总结
Java——StringBuffer类中常用方法的总结
22 0
面试常问:java中String、StringBuilder、StringBuffer三者的区别
之前曾经写了一篇《String类型为什么设计成不可变的》,然后在评论区有人问String、StringBuilder、StringBuffer三者的区别,于是终于把这篇文章补了进来,这篇文章就分析一下这三个类。
20 0
(JAVA):字符串修改操作------String类常见的API。
(JAVA):字符串修改操作------String类常见的API。
71 0
国内Java面试总是问StringBuffer,StringBuilder区别是啥?档次为什么这么低?
GitHub 6.6k Star 的Java工程师成神之路 ,不来了解一下吗? GitHub 6.6k Star 的Java工程师成神之路 ,真的不来了解一下吗? GitHub 6.6k Star 的Java工程师成神之路 ,真的确定不来了解一下吗? 这是一个知乎上面很火的问题(https://www.zhihu.com/question/50211894),下面是我关于这个问题的回答,截止今天,这个答案收获了500+赞和70+评论。
3336 0
Java StringBuffer
String是不变类,用String修改字符串会新建一个String对象,如果频繁的修改,将会产生很多的String对象,开销很大.因此java提供了一个StringBuffer类,这个类在修改字符串方面的效率比String高了很多。
892 0
【1】String,StringBuffer,StringBuillder的底层结构研究
一:StringBuffer的底层 (1)线程安全的字符串操作类 (2)通过synchronized关键字声明同步方法,保证多线程环境下数据安全 1 @Override 2 public synchronized StringBuffer append(String str) { 3 toStringCache = null; 4 super.append(str); 5 return this; 6 } View Code (3)底层存储数据的Char[]数组,初始化时,该数组的长度是16。
805 0
stringBuffer
摘要:分享牛原创,java stringBuffer使用,stringBuffer使用。 分享牛原创(尊重原创 转载对的时候第一行请注明,转载出处来自分享牛http://blog.csdn.net/qq_30739519) stringBuffer如何使用,以及使用需要注意的地方。
668 0
java字符串连接String、StringBuffer和StringBuilder
Java字符串连接再开发中随时用的,方法很多: 先看下下边的代码: package com.meiyabaike.classx; public class ClassxMathCalculate { public static void main(String[] args) { int i1 = 10; int i2 = 20;
1861 0
+关注
小黎的培培笔录.
培培的成长之旅。
60
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载