一、相关介绍

1、StringBuffer介绍

StringBuffer对象是字符串缓冲区对象,用于存放数据的容器

2、StringBuffer特点

  • StringBuffer(字符串缓冲区对象)的长度是可变的;
  • StringBuffer(字符串缓冲区对象)可以存储不同类型的数据,但都会将它们转换成字符串;

3、StringBuffer与String的区别

  • String对象的值不可以修改;而StringBuffer对象的值可以修改;
  • 在对字符串对象进行增、删、改时,StringBuffer的性能比String性能好;

二、常用功能

1、添加

  • StringBuffer append(大多数类型数据);

    (1)作用

    在字符串缓冲区对象的后面添加不同类型的数据

    (2)注意

    其方法返回的对象是自己本身
public static void main(String[] args) {
StringBuffer s = new StringBuffer();
StringBuffer s1 = s.append("test"); System.out.println(s);//test
System.out.println(s1);//test
System.out.println(s.equals(s1));//true
}

我们可以将StringBuffer对象看成字符串缓冲区对象,是一个容器。我们对容器的增删改查,并不影响其地址,故第7行代码为true;而无论你对容器做什么修改,s、s1是一个StringBuffer引用对象,当其引用的对象发生改变时,自然s、s1也发生改变。

2、插入

  • StringBuffer insert(int offset,大多数类型数据);

    (1)作用

    在字符串缓冲区对象的指定位置添加不同类型的数据,其使用方法、作用与append()方法相似

    (2)例子
    public static void main(String[] args) {
StringBuffer s = new StringBuffer("abcd"); s.insert(2, "test");//新的字符串缓冲区对象的下标为2的值是新插入的值
System.out.println(s);//abtestcd
}

3、删除

  • StringBuffer delete(int start,int end);

    (1)作用

    删除该字符串缓冲区指定一段的字符串;包含头、不包含尾;
  • StringBuffer deleteCharAt(int index);

    (1)作用

    删除指定位置的元素;

4、查找

  • char charAt(int index);

    (1)作用

    查找字符串缓冲区对象的指定位置的元素;
  • int indexOf(String str);

    (1)作用

    返回指定字符串在该字符串缓冲区第一次出现的位置;如果没有,返回-1;
  • int indexOf(String str,int fromIndex);

    (1)作用

    从指定位置开始查找,返回指定字符串在该字符串缓冲区第一次出现的位置;如果没有,返回-1;
  • int lastIndexOf(String str);

    (1)作用

    返回指定字符串在该字符串缓冲区最后一次出现的位置;如果没有,返回-1;
  • int lastIndexOf(String str,int fromIndex);

    (1)作用

    从指定位置,从前往后查找;返回指定字符串在该字符串缓冲区出现的位置;如果没有,返回-1;

5、修改

  • StringBuffer replace(int start,int end,String str);

    (1)作用

    将指定范围的字符串换成参数str字符串;
  • void setCharAt(int index,char ch);

    (1)作用

    将字符串缓冲区的指定位置的元素替换成元素ch;

字符串学习笔记(二)---- StringBuffer的更多相关文章

  1. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  2. python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法

    python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...

  3. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  4. Java IO学习笔记二

    Java IO学习笔记二 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输 ...

  5. Redis学习笔记二 (BitMap算法分析与BitCount语法)

    Redis学习笔记二 一.BitMap是什么 就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身.我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省 ...

  6. Django学习笔记二

    Django学习笔记二 模型类,字段,选项,查询,关联,聚合函数,管理器, 一 字段属性和选项 1.1 模型类属性命名限制 1)不能是python的保留关键字. 2)不允许使用连续的下划线,这是由dj ...

  7. Typescript 学习笔记二:数据类型

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

  8. ES6学习笔记<二>arrow functions 箭头函数、template string、destructuring

    接着上一篇的说. arrow functions 箭头函数 => 更便捷的函数声明 document.getElementById("click_1").onclick = ...

  9. python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码

    python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...

  10. python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法

    python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...

随机推荐

  1. 《一步步成为 Hacker_Day 01》

    环境搭建 传统运行模式 - 一台机器同时只能运行一个操作系统 |:----------|----------:| | 应用程序 | 应用程序 | |:----------|----------:| | ...

  2. disruptor 多生产者多消费者实战 四

    一.创建event类 Order public class Order { private String id; private String name; private double price; ...

  3. jquery 的animate 的transform

    $(function(){ var t = 1000; $("#id").animate( {borderSpacing:180}, //180 指旋转度数 { step: fun ...

  4. localStorage,sessionStorage的方法重写

    本文是针对于localStorage,sessionStorage对于object,string,number,bollean类型的存取方法 我们知道,在布尔类型的值localStorage保存到本地 ...

  5. django models中字段

    AutoField:一个自动递增的整型字段,添加记录时它会自动增长.你通常不需要直接使用这个字段:如果你不指定主键的话,系统会自动添加一个主键字段到你的model.(参阅自动主键字段) Boolean ...

  6. 等宽字体的妙用-loading 点点点动画

    原理 ch等宽字体 + text-indent 动画负缩进 显示效果如 loading . loading .. loading ... loading . loading .. loading .. ...

  7. go学习第五天、运算符

    算术运算符 下表列出了所有Go语言的算术运算符.假定 A 值为 10,B 值为 20 运算符 描述 实例 + 相加 A + B 输出结果 30 - 相减 A - B 输出结果 -10 * 相乘 A * ...

  8. vue新窗口跳转路由

    this.$router.push()方法我在这就不多说了: 看代码:   let newUrl = this.$router.resolve({         path: '/test/test' ...

  9. 深度学习与人类语言处理-语音识别(part2)

    上节回顾深度学习与人类语言处理-语音识别(part1),这节课我们将学习如何将seq2seq模型用在语音识别 LAS 那我们来看看LAS的Encoder,Attend,Decoder分别是什么 Lis ...

  10. Ext.grid rowexpander的展开与收缩

    这里写Ext.grid.Panel的展开与收缩. 1. 确保在grid存在rowexpander对象: plugins: [{ ptype: 'rowexpander', rowBodyTpl: [' ...