一、相关介绍

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. ES6的原始类型数据——Symbol

    javascript中原始值,即基本数据类型,像Number,String,Boolean,undefined,Null都是基本类型值,保存在栈中,但是有个疑问: Symbol打印出来明明是个函数,具 ...

  2. Mysql(Mariadb)慢查询日志中long_query_time 与log_queries_not_using_indexes与min_examined_row_limit 关系分析

    慢查询日志中long_query_time 与log_queries_not_using_indexes与min_examined_row_limit 关系分析   参数介绍: long_query_ ...

  3. Linux监控系统相关资源和运行状态命令整理

    #前言:Linux系统自带了些实时查看监控系统运行状态的相关命令,接下来我们就来了解一下. #首先我们先来了解一下什么是进程 #进程:是Linux用来表示正在运行的程序的一种抽象概念,Linux系统上 ...

  4. python常用软件包

    redis数据库: 链接:https://pan.baidu.com/s/1X_ndCj0scF2WZd2FPLRKag 提取码:e3zm git安装包: 链接:https://pan.baidu.c ...

  5. 爬虫过程中获取不到列表页的url

    例1: 采集某网站的时候根据网页页面显示的url链接提取的, 最后始终没有数据返回. 主要原因是页面源码中标签的 href 属性值和页面上的不一样. 页面上显示是‘http://www.xxx.org ...

  6. Linux 文件系统及 ext2 文件系统

      linux 支持的文件系统类型 Ext2:     有点像 UNIX 文件系统.有 blocks,inodes,directories 的概念. Ext3:     Ext2 的加强版,添加了日志 ...

  7. Android网络开发

    1. WebView用法 ①布局文件新建一个WebView,特别注意线性布局和控件的宽高都要匹配父控件 <LinearLayout xmlns:android="http://sche ...

  8. Spring WebFlux 入门

    1. WebFlux介绍 Spring WebFlux 是 Spring Framework 5.0中引入的新的响应式web框架.与Spring MVC不同,它不需要Servlet API,是完全异步 ...

  9. Anaconda常用命令收藏----后期还会更新

    一.更换jupyter notobook的打开目录 一般载在安装好Anaconda的时候,打开jupyter指向的目录一般是系统的根目录,如C:\Users\25282,但是这样的话对C盘是个不小的负 ...

  10. Spring02——Spring 中 Bean 的生命周期及其作用域

    在前一篇文章中,我们已经介绍了 Spring IOC 的相关知识,今天将为个位介绍 Spring 中 Bean 的相关知识.关注我的公众号「Java面典」,每天 10:24 和你一起了解更多 Java ...