认识 StringBuffer及其常用操作方法

来源:互联网 发布:2016淘宝京东市场份额 编辑:程序博客网 时间:2024/05/16 09:04

1.实例操作一:字符串连接操作


范例:通过append连接各种类型的数据
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo01 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();  
    // 声明StringBuffer对象  
        buf.append("Hello ");  
                    // 向StringBuffer中添加  
内容  
        buf.append("World").append("!!!");      
// 可以连续调用append方法  
        buf.append("\n");  
                        // 添加一个转义字符表示换行  
        buf.append("数字 = ").append(1).append("\n"); 
// 可以添加数字  
        buf.append("字符 = ").append('C').append("\n");  
// 可以添加字符  
        buf.append("布尔 = "). append(true);  
        // 可以添加布尔类型  
        System.out.println(buf);  
                    // 内容输出  
    }  

程序运行结果:
Hello World!!!  
数字 = 1 
字符 = C  
布尔 = true 


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

范例:在任意位置处为StringBuffer添加内容
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo03 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();  
// 声明StringBuffer对象  
        buf.append("World!!");  
                // 向StringBuffer中添加内容  
        buf.insert(0, "Hello ") ;               // 在所有内容之前添加  
        System.out.println(buf);  
            // 将修改后的结果输出  
        buf.insert(buf.length(),"MLDN ~") ; // 在最后添加  
        System.out.println(buf);                // 将内容输出  
    }  

程序运行结果:
Hello World!!  
Hello World!!MLDN ~ 



3.实例操作三:字符串反转操作
在StringBuffer中专门提供了字符串反转的操作方法,所谓的字符串反转就是指将一个是"Hello"的字符串转为"olleH"。
范例:字符串反转操作
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo04 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();  
// 声明StringBuffer对象  
        buf.append("World!!");  
                // 向StringBuffer中添加内容  
        buf.insert(0, "Hello ") ;             
// 在所有内容之前添加  
        String str = buf.reverse().toString() ;
// 将内容反转后变为String类型   
        System.out.println(str);            
// 将内容输出  
    }  

程序运行结果:
!!dlroW olleH 
以上程序通过append()和insert()方法向StringBuffer加入数据后,使用reverse()方法将所有的内容以逆序的方式输出。
U提示:字符串反转操作是一种较为常见的操作。
在字符串的操作中,反转是一种较为常见的操作,最早的字符串反转实际上是通过入栈及出栈功能完成的,关于栈(Stack)在Java类集中将为读者介绍。


4.实例操作四:替换指定范围的内容
在StringBuffer类中也存在replace()方法,使用此方法可以对指定范围的内容进行替换。
范例:替换指定范围的内容
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo05 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();  
        // 声明StringBuffer  
对象  
        buf.append("Hello ").append("World!!");  
    // 向StringBuffer中  
添加内容  
        buf.replace(6, 11, "LiXingHua");  
            // 将World替换为  
LiXingHua   
        System.out.println("内容替换之后的结果:" 
+ buf); // 删除替换之后的内容  
    }  

程序运行结果:
内容替换之后的结果:Hello LiXingHua!! 
在String中如果要进行替换,则使用的是replaceAll()方法,而在StringBuffer中使用的是replace()方法,这一点读者在使用时需要注意。


5.实例操作五:字符串截取
通过substring()方法可以直接从StringBuffer的指定范围中截取出内容。
范例:截取指定范围的字符串内容
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo06 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();  
    // 声明StringBuffer对象  
        buf.append("Hello ").append("World!!");  
// 向StringBuffer中添加  
内容  
        buf.replace(6, 11, "LiXingHua");  
        // 将World替换为  
LiXingHua  
        String str = buf.substring(6, 15);  
        // 指定截取范围,并把内容转  
化为String类型  
        System.out.println("截取之后的内容:
" + str);   // 将截取后的结果输出  
    }  

程序运行结果:
截取之后的内容:LiXingHua 



6.实例操作六:删除指定范围的字符串
因为StringBuffer本身的内容是可更改的,所以也可以通过delete()方法删除指定范围的内容。
范例:从StringBuffer中删除指定范围的字符串
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo07 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();  
    // 声明StringBuffer对象  
        buf.append("Hello ").append("World!!");  
// 向StringBuffer中添加  
内容  
        buf.replace(6, 11, "LiXingHua");  
        // 将World替换为  
LiXingHua  
        String str = buf.delete(6, 15).toString(); 
// 删除指定范围的字符串  
        System.out.println("删除之后的内容:" + str); 
// 输出删除之后的剩余内容  
    }  

程序运行结果:
删除之后的内容:Hello !! 


7.实例操作七:查找指定的内容是否存在
通过indexOf()方法可以查找指定的内容,如果查找到了,则返回内容的位置,如果没有查找到则返回-1。
范例:查找指定的内容是否存在
package org.lxh.demo11.stringbufferdemo;  
public class StringBufferDemo08 {  
    public static void main(String[] args) {  
        StringBuffer buf = new StringBuffer();    
// 声明StringBuffer对象  
        buf.append("Hello ").append("World!!");
// 向StringBuffer中添加内容  
        if(buf.indexOf("Hello")==-1){             
// 没有查找到则返回-1   
            System.out.println("没有查找到指定的内容") ;  
        }else{                                   
// 不为-1表示查找到内容  
            System.out.println("可以查找到指定的内容") ;  
        }  
    }  


原创粉丝点击