文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

一篇文章带你搞定StringBuffer类和常用方法

2024-12-03 09:52

关注

一、StringBuffer类

我们知道字符串是常量,一旦被创建后,它的内容和长度值是不能够改变的,当需要对一个字符串进行修改,只可以再创建,这样就有点麻烦,可以使用StringBuffer类来解决这个问题,修改它的内容和长度。它是一个容器,可以添加和删除,此时不会产生新的StringBuffer对象。

创建StringBuffer对象方法

StringBuffer( ):构造一个空的缓冲字符串,它是没有字符,初始容量为16个字符。

StringBuffer(int length):构造一个长度为length的空的缓冲字符串

StringBuffer(String str):构造一个缓冲字符串,它初始化内容为给定的字符串str,然后加上16个字符的初始容量。

二、StringBuffer常用方法

stringBuffer常用方法以下表示:

StringBuffer append(char c):添加参数到StringBuffer对象中。

StringBuffer insert(int index,String str):从字符串中index中插入字符串,形成新的字符串。

StringBuffer deleteCharAt(int index):删除指定位置的字符,把剩下的内容形成一个新的字符串。

StringBuffer delete(int start,int end):删除这个序列的字符串中的字符。

StringBuffer replace(int start,int end,String str):在StringBuffer对象中替换指定字符。

StringBuffer toString():把StringBuffer对象转换成String对象。

StringBuffer reserse():StringBuffer对象中的内容反转,形成新的字符串。

void setCharAt(int index,char c):修改指定位置index的字符串

StringBuffer常用方法例子

  1. public class p49 { 
  2. public static void main(String[] args) { 
  3.         // TODO Auto-generated method stub 
  4.          StringBuilder sb = new StringBuilder(); 
  5.          sb.append("java"); 
  6.          System.out.println("添加字符串到末尾:"+sb); 
  7.          sb.insert(0 , "hello ");    
  8.          System.out.println("在指定的位置插入字符串:"+sb); 
  9.          sb.replace(5, 6, ","); 
  10.          System.out.println("替换指定位置的字符串:"+sb); 
  11.          sb.delete(5, 6);  
  12.          System.out.println("删除指定位置的字符:"+sb); 
  13.          sb.reverse();   
  14.          System.out.println("字符串翻转:"+sb); 
  15.          System.out.println("字符串的长度为:"+sb.length()); 

运行的结果是:

 

三、String类和StringBuffer类区别

String类是字符串常量,被创建后它的内容和长度是不可以改变的。而StringBuffer类是字符的容量,它的内容和长度是可以发生改变的。

如果是表示数据类型的就用String类,需要对字符串的增删改的就可以使用StringBuffer类。

String类有Object类的equal()方法,StringBuffer类是没有这个equal()方法。我们通过下面的例子来看一下。

  1. public class p51 { 
  2. public static void main(String[] args) { 
  3.         // TODO Auto-generated method stub 
  4.         //String类 
  5.         String str1="hellojava"
  6.         String str2="hellojava"
  7.         if(str1.equals(str2)){ 
  8.             System.out.println("String类结果:"+true); 
  9.         }else
  10.             System.out.println("String类结果:"+false); 
  11.         } 
  12.         //StringBuffer类 
  13.         StringBuffer sb1=new StringBuffer("hello"); 
  14.         StringBuffer sb2=new StringBuffer("hello"); 
  15.         if(sb1.equals(sb2)){ 
  16.             System.out.println("StringBuffer类结果:"+true); 
  17.         }else
  18.             System.out.println("StringBuffer类结果:"+false); 
  19.         } 

运行的结果是:

String类字符串的连接可以使用”+”,而StringBuffer类不可以使用这个”+”。我们通过下面的这个例子看一下:

  1. public class p52 { 
  2. public static void main(String[] args) { 
  3.         // TODO Auto-generated method stub 
  4.         String str1="hello"
  5.         String str2="java"
  6.         String str3=str1+str2; 
  7.         System.out.println("字符串str1和str2的拼接为:"+str3); 
  8.         //输出的结果是字符串str1和str2的拼接为:hellojava 
  9.         StringBuffer sb1=new StringBuffer("hello"); 
  10.         StringBuffer sb2=new StringBuffer("java"); 
  11.         StringBuffer sb3=sb1+sb2;//出现报错 

运行的结果是:


四、总结

本文主要介绍了StringBuffer类、StringBuffer常用方法、String类和StringBuffer类区别。

StringBuffer类是字符的容量,它的内容和长度是可以发生改变的,介绍了它的创建StringBuffer对象方法。

StringBuffer常用方法通过例子帮助理解对字符串的操作。了解String类和StringBuffer类区别在程序开发中,知道这些的区别和用法。希望大家通过本文的学习,对你有所帮助!

 

来源: Java进阶学习交流内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯