字符串学习笔记(二)---- StringBuffer
一、相关介绍
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的更多相关文章
- python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字
python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...
- python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法
python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...
- AJax 学习笔记二(onreadystatechange的作用)
AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...
- Java IO学习笔记二
Java IO学习笔记二 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输 ...
- Redis学习笔记二 (BitMap算法分析与BitCount语法)
Redis学习笔记二 一.BitMap是什么 就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身.我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省 ...
- Django学习笔记二
Django学习笔记二 模型类,字段,选项,查询,关联,聚合函数,管理器, 一 字段属性和选项 1.1 模型类属性命名限制 1)不能是python的保留关键字. 2)不允许使用连续的下划线,这是由dj ...
- Typescript 学习笔记二:数据类型
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- ES6学习笔记<二>arrow functions 箭头函数、template string、destructuring
接着上一篇的说. arrow functions 箭头函数 => 更便捷的函数声明 document.getElementById("click_1").onclick = ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法
python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...
随机推荐
- ES6引入的Reflect对象目的何在?
Reflect对象其实就是为了取代Object对象.取代原因有一下几点: 1)Object对象的一些内部方法放在了Reflect上面,比如:Object.defineProperty.主要是优化了语言 ...
- 01 搭建EasyMock环境
EasyMock 介绍 EasyMock是一个构建模拟数据的平台,也可以说是一个在线mockJs平台 EasyMock优势 省去配置.安装mockJs步骤,解决多人协作Mock数据不互通问题 不需要在 ...
- 将python的字典格式数据写入excei表中
上面的为最终结果 import requests import re import xlwt import json # 导入必须的包: xlwt,json,requests,re. headers ...
- Vue2.0 【第三季】第1节 propsData Option 全局扩展的数据传递
目录 Vue2.0 [第三季]第1节 propsData Option 全局扩展的数据传递 第1节 propsData Option 全局扩展的数据传递 Vue2.0 [第三季]第1节 propsDa ...
- TCP建立连接(三次握手)
TCP的三次握手 TCP作为可靠稳定的传输方式要建立会话,会话的发起者是请求者(客户机),下文中A为客户机,B为服务器. 1.客户机(A)从closed状态转化为主动打开,服务器(B)此时从close ...
- IPv4地址表示法详解
在TCP/IP协议中,IP地址是一个最基本的概念,本文就来参考<计算机网络>谢希仁 这本书,总结一下IPv4地址表示法的发展阶段,做个读书笔记. IP地址的编址方法共经过了三个历史阶段: ...
- 不要再认为Stream可读性不高了!
距离Java 8发布已经过去了7.8年的时间,Java 14也刚刚发布.Java 8中关于函数式编程和新增的Stream流API至今饱受"争议". 如果你不曾使用Stream流,那 ...
- mysql刷题(不定时更新)
面试阶段大家基本都会问一些mysql的题,具体的高深理论以后再慢慢补充,但是刷题是不可避免的,下面直接上货 创建/删除表和索引系列 创建表 CREATE TABLE if not exists `te ...
- C# datagridview 格式化单元格内容
private void dgvBig_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { if (dgvB ...
- [Linux系统] CentOS7(RHEL7)重置root用户密码
1.系统启动时,按"e"进入编辑界面 2.编辑内容 将rhgb quiet修改为 init=/bin/sh : 然后按 ctrl+x . 3.修改root密码 mount -o r ...