博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java常用类二:StringBuffer
阅读量:3977 次
发布时间:2019-05-24

本文共 3728 字,大约阅读时间需要 12 分钟。

java常用类二:StringBuffer

1.认识StringBuffer

  在String类的介绍中,有一条特性是String的内容一旦声明则不可改变,如果要改变,则改变的肯定是String的引用地址,那么如果一个字符串需要经常改变,则就必须使用StringBuffer类。我们知道在Sring类中可以通过“+”进行字符串的拼接,但在StringBuffer中却只能使用append方法进行字符串的拼接。下面在介绍方法时候,再展示。
2.StringBuffer常用方法

方法一:字符串连接操作

  在程序中可以使用append()方法可以进行字符串的连接,而且此方法返回一个StringBuffer类的实例,这样就可以使用代码链的形式一直调用append()方法。
方法演示示例:

public class StringBufferDemo01{
public static void mains(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); //直接输出对象,调用toString }}

范例:验证StringBuffer的内容是可以更改的

public class StringBufferDemo02{
public static void main(String args[]){
StringBuffer buf = new StringBuffer(); //声明StringBuffer对象 buf.append("Hello"); fun(buf); // 传递StringBuffer的内容 System.out.println(buf); } public static void fun(StringBuffer s){
//接受StringBuffer引用 s.append("HZJT").append("HZIT"); //修改StringBuffer的内容 }}

方法二:在任意位置处为StringBuffer添加内容

  可以直接使用insert()方法在指定的位置上为StringBuffer添加内容。
方法演示示例:

public class StringBufferDemo03{
public static void main(String args[]){
StringBuffer buf = new StringBuffer(); //声明StringBuffer对象 buf.append("World!!"); buf.insert(0, "Hello"); System.out.println(buf); buf.insert(buf.length(),"HZIT"); System.out.println(buf); }}

方法三:字符串反转操作

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

public class StringBufferDemo04{
public static void main(String args[]){
StringBuffer buf = new StringBuffer(); buf.append("World"); //添加内容 buf.insert(0,"Hello"); //在第一个内容之前添加内容 String str = buf.reverse().toString(); //将内容反转后变为String类型 System.out.println(str); //输出:dlroWolleH }}

方法四:替换指定范围的内容

  在StringBuffer中也存在replace()方法,使用此方法可以对指定范围的内容进行替换,而在String中如果要进行替换,则使用的是replaceAll()方法,这一点需要注意一下。

public class StringBufferDemo05{
public static void main(String args[]){
StringBuffer buf = new StringBuffer(); //声明StringBuffer对象 buf.append("Hello").append("World!!"); buf.replace(6,11,"hzit"); //将world的内容替换 System.out.println("内容替换之后的结果:"+buf); //输出内容:内容替换之后的结果:HelloWhzit! }}

方法五:字符串截取

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

public class StringBufferDemo06{
public static void main(String args[]){
StringBuffer buf = new StringBuffer(); //声明StringBuffer对象 buf.append("Hello").append("World!!"); //向StringBuffer添加内容 buf.replace(6,11,"zhangsan"); //将world的内容替换 System.out.println(buf); //输出:HelloWzhangsan! String str = buf.substring(6,15); //截取指定范围的内容 System.out.println("内容替换之后的结果:"+ str); //输出内容:zhangsan! }}

方法六:删除指定方位的字符串

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

public class StringBufferDemo07{
public static void main(String args[]){
StringBuffer buf = new StringBuffer(); //声明StringBuffer对象 buf.append("Hello").append("World!!"); //向StringBuffer添加内容 buf.replace(6,11,"zhangsan"); //将world的内容替换 System.out.println(buf); //输出:HelloWzhangsan! String str = buf.delete(6,15).toString(); //截取指定范围的内容 System.out.println("删除之后的结果:"+ str); //输出内容:zhangsan! }}

方法七:查找指定的内容是否存在

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

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){
System.out.println("没有查找到指定内容"); }else{
System.out.println("可以查找到指定的内容"); } }}

上面就是StringBuffer的基本用法,每个方法的代码都可以自己试一试,比较浅显,如有错误望指正。

转载地址:http://magki.baihongyu.com/

你可能感兴趣的文章
Android音频系统之AudioPolicyService
查看>>
Android系统Root与静默安装
查看>>
Android Property实现介绍
查看>>
Android SystemProperties设置/取得系统属性的用法总结
查看>>
Android 休眠 FLAG_KEEP_SCREEN_ON
查看>>
Android添加onKeyLongPress事件
查看>>
使用微信api将内容分享给好友,或者发送到朋友圈
查看>>
android开发中输入法的弹出和隐藏
查看>>
Android 如何在自定义界面上启用输入法 (How to enable inputmethod for the custom UI)
查看>>
Android MediaCodec小结
查看>>
YUV格式说明
查看>>
MediaCodec and Camera: colorspaces don't match
查看>>
android adb 读写模式 挂载文件系统
查看>>
onTouchEvent方法的使用
查看>>
Android详细解释键盘和鼠标事件
查看>>
如何成为强大的程序员?
查看>>
打包时sun.misc.ServiceConfigurationError
查看>>
摘自 管理自己[Managing Oneself]
查看>>
程序员开发大型应用程序的技巧
查看>>
远程团队管理的10条戒律
查看>>