黑马程序员_常用API之BufferString、StringBuilder

——- android培训java培训、期待与您交流! ———-
一、StringBuffer
是个字符串缓冲区对象,用于存储数据的容器
特点:1.长度是可变的
2.可以存储不同类型数据
3.最终要转换成字符串使用(toString方法)
4.可以对字符串进行修改
功能
1、存储
(1)StringBuffer append();将指定的数据作为参数添加到已有数据结尾处。
示例:

public static void main(String[] args)
    {
        StringBuffer sb = new StringBuffer();
        StringBuffer sb1 = sb.append(34);
        sop(sb.toString());
        sop(sb1.toString());
    }
     public static void sop(String str)
     {
         System.out.println(str);
     }

打印结果如下:
这里写图片描述

public static void main(String[] args)
    {
        StringBuffer sb = new StringBuffer();
        StringBuffer sb1 = sb.append(34);
        sop("sb==sb1:"+(sb==sb1));
        sop(sb.toString());
        sop(sb1.toString());
    }
     public static void sop(String str)
     {
         System.out.println(str);
     }

这里写图片描述

public static void main(String[] args)
    {
        StringBuffer sb = new StringBuffer();
        sb.append("abc").append(true).append(34);//方法调用链
        sop(sb.toString());
    }
     public static void sop(String str)
     {
         System.out.println(str);
     }

这里写图片描述
(2)insert(位置(offset),字符串) 将数据插入到指定位置

public static void main(String[] args)
    {
        StringBuffer sb = new StringBuffer();
        sb.append("abc").append(true).append(34);//方法调用链
        sb.insert(1, "qq");
        sop(sb.toString());
    }
     public static void sop(String str)
     {
         System.out.println(str);
     }

打印结果为:
这里写图片描述
2、删除
StringBuffer delete(start,end) 删除缓冲区中的数据,包含start不包含end
StringBuffer deleteCharAt(ine index)删除指定位置元素 StringBuffer.delete(0,sb.length());
示例:

public static void main(String [] args)
    {
        method_del();
    }
     public static void method_del()
     {
         StringBuffer sb = new StringBuffer("abcde");
         sb.delete(1,3);
         sop(sb.toString());
     }
     public static void sop(String str)
     {
         System.out.println(str);
     }

`打印结果为:
这里写图片描述
3、获取
char charAt(index); int indexof(string) int lastindexof(String);
Int length()
String substring(int start,int end)
4、修改
(1)StringBuffer replace(start,end,String)
示例:

public static void main(String [] args)
    {
                method_update();
    }
      public static void method_update()
     {
         StringBuffer sb = new StringBuffer("abcde");
         sb.replace(1, 4, "java");

         sop(sb.toString());
     }
     public static void sop(String str)
     {
         System.out.println(str);
     }  

`打印结果为:
这里写图片描述
(2) void setCharAt(index,char)

public static void main(String [] args)
    {
                method_update();
    }
      public static void method_update()
     {
         StringBuffer sb = new StringBuffer("abcde");
                 sb.setCharAt(1, 'k');
                 sop(sb.toString());
     }
     public static void sop(String str)
     {
         System.out.println(str);
     }

打印结果为:
这里写图片描述
(3) setlength()设置长度
5.反转 StringBuffer reverse();
6.将缓冲区中的指定数据存储到指定字符数组中 void getChars(int srcBegin,int srcEnd,char[] dst,int dstbegin)
示例:

public static void main(String[] args)
    {
        StringBuffer sb = new StringBuffer("abcdef");
        char[] chs = new char[4];
        sb.getChars(1, 4, chs, 1);
        for(int x = 0; x<chs.length;x++)
        {
            sop("chs["+x+"]="+chs[x]+";");
        }
    }
     public static void sop(String str)
     {
         System.out.println(str);
     }

打印结果为:
这里写图片描述
二、StringBuilder
JDK1.5版本之后出现了 StringBuilder
StringBuilder 线程不同步的
StringBuffer是同步的。多线程建议使用。
建议使用StringBuilder效率快。
JAVA 升级 :提高效率 简化书写 提高安全性

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值