认识StringBuffer类(2)

本文详细介绍了StringBuffer类的各种操作方法,包括插入、反转、替换、截取、删除字符串及查找内容等,并提供了多个实例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

11.1.1  认识StringBuffer类(2)

2.实例操作二:在任意位置处为StringBuffer添加内容

可以直接使用insert()方法在指定的位置上为StringBuffer添加内容,代码如下。

范例:在任意位置处为StringBuffer添加内容

  1. package org.lxh.demo11.stringbufferdemo;  
  2. public class StringBufferDemo03 {  
  3.     public static void main(String[] args) {  
  4.         StringBuffer buf = new StringBuffer();  
  5. // 声明StringBuffer对象  
  6.         buf.append("World!!");  
  7.                 // 向StringBuffer中添加内容  
  8.         buf.insert(0"Hello ") ;               // 在所有内容之前添加  
  9.         System.out.println(buf);  
  10.             // 将修改后的结果输出  
  11.         buf.insert(buf.length(),"MLDN ~") ; // 在最后添加  
  12.         System.out.println(buf);                // 将内容输出  
  13.     }  

程序运行结果:

  1. Hello World!!  
  2. Hello World!!MLDN ~ 

3.实例操作三:字符串反转操作

在StringBuffer中专门提供了字符串反转的操作方法,所谓的字符串反转就是指将一个是"Hello"的字符串转为"olleH"。

范例:字符串反转操作

  1. package org.lxh.demo11.stringbufferdemo;  
  2. public class StringBufferDemo04 {  
  3.     public static void main(String[] args) {  
  4.         StringBuffer buf = new StringBuffer();  
  5. // 声明StringBuffer对象  
  6.         buf.append("World!!");  
  7.                 // 向StringBuffer中添加内容  
  8.         buf.insert(0"Hello ") ;             
    // 在所有内容之前添加  
  9.         String str = buf.reverse().toString() ;
    // 将内容反转后变为String类型   
  10.         System.out.println(str);            
    // 将内容输出  
  11.     }  

程序运行结果:

  1. !!dlroW olleH 

以上程序通过append()和insert()方法向StringBuffer加入数据后,使用reverse()方法将所有的内容以逆序的方式输出。

U提示:字符串反转操作是一种较为常见的操作。

在字符串的操作中,反转是一种较为常见的操作,最早的字符串反转实际上是通过入栈及出栈功能完成的,关于栈(Stack)在Java类集中将为读者介绍。

4.实例操作四:替换指定范围的内容

在StringBuffer类中也存在replace()方法,使用此方法可以对指定范围的内容进行替换。

范例:替换指定范围的内容

  1. package org.lxh.demo11.stringbufferdemo;  
  2. public class StringBufferDemo05 {  
  3.     public static void main(String[] args) {  
  4.         StringBuffer buf = new StringBuffer();  
  5.         // 声明StringBuffer  
  6. 对象  
  7.         buf.append("Hello ").append("World!!");  
  8.     // 向StringBuffer中  
  9. 添加内容  
  10.         buf.replace(611"LiXingHua");  
  11.             // 将World替换为  
  12. LiXingHua   
  13.         System.out.println("内容替换之后的结果:" 
    + buf); // 删除替换之后的内容  
  14.     }  

程序运行结果:

  1. 内容替换之后的结果:Hello LiXingHua!! 

在String中如果要进行替换,则使用的是replaceAll()方法,而在StringBuffer中使用的是replace()方法,这一点读者在使用时需要注意。

5.实例操作五:字符串截取

通过substring()方法可以直接从StringBuffer的指定范围中截取出内容。

范例:截取指定范围的字符串内容

  1. package org.lxh.demo11.stringbufferdemo;  
  2. public class StringBufferDemo06 {  
  3.     public static void main(String[] args) {  
  4.         StringBuffer buf = new StringBuffer();  
  5.     // 声明StringBuffer对象  
  6.         buf.append("Hello ").append("World!!");  
  7. // 向StringBuffer中添加  
  8. 内容  
  9.         buf.replace(611"LiXingHua");  
  10.         // 将World替换为  
  11. LiXingHua  
  12.         String str = buf.substring(615);  
  13.         // 指定截取范围,并把内容转  
  14. 化为String类型  
  15.         System.out.println("截取之后的内容:
    "
     + str);   // 将截取后的结果输出  
  16.     }  

程序运行结果:

  1. 截取之后的内容:LiXingHua 

6.实例操作六:删除指定范围的字符串

因为StringBuffer本身的内容是可更改的,所以也可以通过delete()方法删除指定范围的内容。

范例:从StringBuffer中删除指定范围的字符串

  1. package org.lxh.demo11.stringbufferdemo;  
  2. public class StringBufferDemo07 {  
  3.     public static void main(String[] args) {  
  4.         StringBuffer buf = new StringBuffer();  
  5.     // 声明StringBuffer对象  
  6.         buf.append("Hello ").append("World!!");  
  7. // 向StringBuffer中添加  
  8. 内容  
  9.         buf.replace(611"LiXingHua");  
  10.         // 将World替换为  
  11. LiXingHua  
  12.         String str = buf.delete(615).toString(); 
    // 删除指定范围的字符串  
  13.         System.out.println("删除之后的内容:" + str); 
    // 输出删除之后的剩余内容  
  14.     }  

程序运行结果:

  1. 删除之后的内容:Hello !! 

7.实例操作七:查找指定的内容是否存在

通过indexOf()方法可以查找指定的内容,如果查找到了,则返回内容的位置,如果没有查找到则返回-1。

范例:查找指定的内容是否存在

  1. package org.lxh.demo11.stringbufferdemo;  
  2. public class StringBufferDemo08 {  
  3.     public static void main(String[] args) {  
  4.         StringBuffer buf = new StringBuffer();    
    // 声明StringBuffer对象  
  5.         buf.append("Hello ").append("World!!");
    // 向StringBuffer中添加内容  
  6.         if(buf.indexOf("Hello")==-1){             
    // 没有查找到则返回-1   
  7.             System.out.println("没有查找到指定的内容") ;  
  8.         }else{                                   
    // 不为-1表示查找到内容  
  9.             System.out.println("可以查找到指定的内容") ;  
  10.         }  
  11.     }  

程序运行结果:

  1. 可以查找到指定的内容 

从以上应用中可以发现,大部分形式与String类相似。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值