stringBuilder的使用
来源:互联网 发布:手机艺术字软件 编辑:程序博客网 时间:2024/05/14 18:20
String在每次修改时,会创建一个新的对象。在大量操作时,会占用太多资源。而StringBuilder和StringBuffer不会,这两个只有在toString时才会创建对象。
但是StringBuilder和StringBuffer不同,前者是非线程安全的,后者是线程安全的。
在对字符串操作频繁的情况下,不建议用 “+” 来对字符串拼接,而是用StringBuilder和StringBuffer。
StringBuilder适合单线程使用,StringBuffer适合多线程使用。
StringBuilder包含的函数列表:
// 构造函数。默认的字符数组大小是16。StringBuilder() // 构造函数。指定StringBuilder的字符数组大小是capacity。 StringBuilder(int capacity) // 构造函数。指定字符数组大小=seq长度+15,且将seq的值赋值到当前字符数组中。StringBuilder(CharSequence seq) // 构造函数。指定字符数组大小=str长度+15,且将str的值赋值到当前字符数组中。StringBuilder(String str) // 追加“各种对应对象的字符串”在当前的stringbuilder后面,相当于两个String1+String2的效果,但是性能比连个String拼接快得多StringBuilder append(float f) StringBuilder append(double d) StringBuilder append(boolean b) StringBuilder append(int i) StringBuilder append(long l) StringBuilder append(char c) StringBuilder append(char[] chars) StringBuilder append(String str) StringBuilder append(Object obj) StringBuilder append(StringBuffer sb) StringBuilder append(CharSequence csq) StringBuilder appendCodePoint(int codePoint) // 追加“str“,从offset开始,内容长度是len StringBuilder append(char[] str, int offset, int len)// 追加“csq“,从start(包括)到end(不包括) StringBuilder append(CharSequence csq, int start, int end) // 删除“从start(包括)到end的内容” StringBuilder delete(int start, int end) // 删除“位置index的内容” StringBuilder deleteCharAt(int index) // 用“string”替换StringBuilder中从start(包括)到end(不包括)的内容StringBuilder replace(int start, int end, String string) // 在StringBuilder的位置offset处插入 “str中从offset开始的内容”,插入内容长度是lenStringBuilder insert(int offset, char[] str, int strOffset, int strLen)// 在StringBuilder的位置offset处插入“s中从start到end”的内容StringBuilder insert(int offset, CharSequence s, int start, int end)// 在StringBuilder的位置offset处插入对应对象的字符串StringBuilder insert(int offset, boolean b) StringBuilder insert(int offset, int i) StringBuilder insert(int offset, long l) StringBuilder insert(int offset, float f) StringBuilder insert(int offset, double d) StringBuilder insert(int offset, char c) StringBuilder insert(int offset, char[] ch) StringBuilder insert(int offset, String str) StringBuilder insert(int offset, Object obj) StringBuilder insert(int offset, CharSequence s) // 反转StringBuilderStringBuilder reverse() // 从start开始查找,返回“subString”在StringBuilder的位置int indexOf(String subString, int start) // 返回“string”在StringBuilder的位置 int indexOf(String string) // 从后向前查找,返回“string”在StringBuilder的位置int lastIndexOf(String string) // 从start开始,从后向前查找,返回“string”在StringBuilder的位置 int lastIndexOf(String subString, int start) // 返回StringBuilder的长度int length()// 返回StringBuilder中从start(包括)之后的内容String substring(int start) // 返回StringBuilder中从start(包括)到end(不包括)之间的内容String substring(int start, int end) // BUT!!!!!!StringBuilder中的substring是用的String中的方法// 所以实际上Stringbuilder中的subString在高并发系统里性能会差一些因为他会多分配对象,// 特别是当你反复使用subString方法的时候一定要记得使用String对象
0 0
- StringBuilder的使用
- Java StringBuilder 的使用
- StringBuilder的使用
- StringBuilder类的使用
- StringBuilder的使用
- C#StringBuilder的使用
- Java StringBuilder 的使用
- StringBuilder的使用
- stringBuilder的使用
- C# StringBuilder的使用
- 使用StringBuilder, StringBuilder和String的区别
- 使用StringBuilder, StringBuilder和String的区别
- 使用StringBuilder, StringBuilder和String的区别
- 使用StringBuilder, StringBuilder和String的区别
- c#中stringbuilder的使用
- StringBuffer与StringBuilder的使用
- c#中stringbuilder的使用
- c#中stringbuilder的使用
- nginx防盗链设置
- Spring Bean生命周期2
- 导入项目出现:Could not find com.android.support.constraint:constraint-layout:2.0.0-alpha8的解决方法
- mybatis-SQL语句构建器(七)
- SeasLog打造PHP项目中的高性能日志组件
- stringBuilder的使用
- iOS使用Carrierwave进行图片和视频的上传(swift3.0)
- myeclipse10版本激活
- 定义颜色打印输出头文件"print_level.h"
- win7家庭版连接本地数据库问题
- BZOJ 1123: [POI2008]BLO 点双联通,Tarjan求割点
- 每日一道算法题——Container with Most Water
- 【BZOJ2194】快速傅里叶之二,FFT和一点奇怪的想法
- js异步编程的四种解决方案