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

举报
小黎的培培笔录 发表于 2022/04/18 21:00:39 2022/04/18
【摘要】 ​目录前言:1、charAt() 方法声明:功能:代码示例:2、indexOf() 方法 代码示例:3、delete() 方法声明:功能:补充:代码示例:分析: 4、replace()方法声明:功能:代码示例:分析: 5、reverse() 方法 声明:功能:代码示例:6、setCharAt() 方法 声明:功能:代码示例:注意:这种写法不对!7、小结:前言:​               ...

目录

前言:

1、charAt() 方法

声明:

功能:

代码示例:

2、indexOf() 方法

 代码示例:

3、delete() 方法

声明:

功能:

补充:

代码示例:

分析: 

4、replace()方法

声明:

功能:

代码示例:

分析: 

5、reverse() 方法 

声明:

功能:

代码示例:

6、setCharAt() 方法 

声明:

功能:

代码示例:

注意:这种写法不对!

7、小结:



前言:

                                        努力做到尽善尽美

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


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')); 

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

7、小结:

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

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。