欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

AJPFX关于JAVA StringBuffer的用法总结

程序员文章站 2022-06-24 11:05:25
StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。 1、StringBuffer对象的初始化 StringBuffer对象 ......
stringbuffer类和string一样,也用来代表字符串,只是由于stringbuffer的内部实现方式和string不同,所以stringbuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于string类。
1、stringbuffer对象的初始化
stringbuffer对象的初始化不像string类的初始化一样,java提供的有特殊的语法,而通常情况下一般使用构造方法进行初始化。
例如:
stringbuffer s = new stringbuffer();
这样初始化出的stringbuffer对象是一个空的对象,就是我犯的错误。
如果需要创建带有内容的stringbuffer对象,则可以使用:
stringbuffer s = new stringbuffer(“abc”);
这样初始化出的stringbuffer对象的内容就是字符串”abc”。
需要注意的是,stringbuffer和string属于不同的类型,也不能直接进行强制类型转换,下面的代码都是错误的:
         stringbuffer s = “abc”;               //赋值类型不匹配
         stringbuffer s = (stringbuffer)”abc”;    //不存在继承关系,无法进行强转
stringbuffer对象和string对象之间的互转的代码如下:
         string s = “abc”;
         stringbuffer sb1 = new stringbuffer(“123”);
         stringbuffer sb2 = new stringbuffer(s);   //string转换为stringbuffer
         string s1 = sb1.tostring();              //stringbuffer转换为string
         2、stringbuffer的常用方法
stringbuffer类中的方法主要偏重于对于字符串的变化,例如追加、插入和删除等,这个也是stringbuffer和string类的主要区别。
a、append方法
         public stringbuffer append(boolean b)
该方法的作用是追加内容到当前stringbuffer对象的末尾,类似于字符串的连接。调用该方法以后,stringbuffer对象的内容也发生改变,例如:
                  stringbuffer sb = new stringbuffer(“abc”);
                   sb.append(true);
         这样对象sb的值就是字符串“select * from userinfo where username=test and pwd=123”。
b、deletecharat方法
         public stringbuffer deletecharat(int index)
该方法的作用是删除指定位置的字符,然后将剩余的内容形成新的字符串。例如:
         stringbuffer sb = new stringbuffer(“test”);
         sb. deletecharat(1);
该代码的作用删除字符串对象sb中索引值为1的字符,也就是删除第二个字符,剩余的内容组成一个新的字符串。所以对象sb的值变为”tst”。
还存在一个功能类似的delete方法:
         public stringbuffer delete(int start,int end)
该方法的作用是删除指定区间以内的所有字符,包含start,不包含end索引值的区间。例如:
         stringbuffer sb = new stringbuffer(“teststring”);
         sb. delete (1,4);
该代码的作用是删除索引值1(包括)到索引值4(不包括)之间的所有字符,剩余的字符形成新的字符串。则对象sb的值是”tstring”。
c、insert方法
        public stringbuffer insert(int offset, boolean b)
       该方法的作用是在stringbuffer对象中插入内容,然后形成新的字符串。例如:
                  stringbuffer sb = new stringbuffer(“teststring”);
                  sb.insert(4,false);
该示例代码的作用是在对象sb的索引值4的位置插入false值,形成新的字符串,则执行以后对象sb的值是”testfalsestring”。
d、reverse方法
        public stringbuffer reverse()
该方法的作用是将stringbuffer对象中的内容反转,然后形成新的字符串。例如:
         stringbuffer sb = new stringbuffer(“abc”);
         sb.reverse();
经过反转以后,对象sb中的内容将变为”cba”。