美文网首页
Java StringBuffer 和 StringBuilde

Java StringBuffer 和 StringBuilde

作者: 小石头呢 | 来源:发表于2019-08-15 10:09 被阅读0次

一.概念

  • String类似于OC的NSString,则也会有与之对应的可变字符串在Java里面对应OC的NSMutableString的是StringBuffer 和 StringBuilder

  • StringBuffer 和 StringBuilder相较于String,可以被多次的修改,并且不产生新的未使用对象。

  • StringBuffer 和 StringBuilder最大的不同是StringBuilder的方法不是线程安全的(不能同步访问),但是具有速度上的优势,所以多数情况下建议采用。

二.方法

  • 构造方法
//构造一个没有字符的字符串构建器,初始容量为16个字符。
StringBuilder()

//构造一个包含与指定的相同字符的字符串构建器 CharSequence。
StringBuilder(CharSequence seq)

//构造一个没有字符的字符串构建器,由 capacity参数指定的初始容量。
StringBuilder(int capacity)
 
//构造一个初始化为指定字符串内容的字符串构建器。
StringBuilder(String str)
  • append尾部追加方法
//boolean int double float long  char char[] charSequence String Object
public StringBuilder append(参数类型 var)

//追加对应位置的字符
public StringBuilder append(char[] var, int offset, int len)
  • insert插入方法
//boolean int double float long  char char[] charSequence String Object
public StringBuilder insert(int offset, 参数类型 var)

//插入对应位置的字符
public StringBuilder insert(int offsetS, char[] var2, int offsetC, int len)
  • replace替换方法
public StringBuilder replace(int offset, int length, String var)
  • reverse将此字符序列用其反转形式取代。
public StringBuilder reverse()
  • delete删除对应位置的字符
public StringBuilder delete(int offset, int len);
  • 转化为String
String toString()
  • 其它的方法

三.代码

//创建的同时先准备好6个字符的的空间,也可以为空,明确大小会很快
StringBuilder sb = new StringBuilder(6);

//末尾追加-重载
sb.append(1);
System.out.println(sb);
sb.append('I');
System.out.println(sb);
sb.append(" love Android");
System.out.println(sb);

//插入-重载
sb.insert(1,':');
System.out.println(sb);

//替换
sb.replace(0,2,"");
int start = sb.indexOf("Android");
int end = start+"Android".length();
sb.replace(start,end,"you");
System.out.println(sb);

//反转
sb.reverse();
System.out.println(sb);

//删除
sb.delete(0,3);
System.out.println(sb);

//运行结果
1
1I
1I love Android
1:I love Android
I love you
uoy evol I
 evol I

相关文章

网友评论

      本文标题:Java StringBuffer 和 StringBuilde

      本文链接:https://www.haomeiwen.com/subject/qeyejctx.html