美文网首页
Java基础---字符串StringBuffer,StringB

Java基础---字符串StringBuffer,StringB

作者: 胡伟红 | 来源:发表于2020-01-16 14:48 被阅读0次
  • StringBuffer

StringBuffer是字符串缓存区,是一个容器
1.而且长度可变化的
2.可以操作多个数据类型
3.最终会通过toString方法变成字符串

C (create) U (update) R (read) D (delete)

1.存储

StringBuffer append();将制定数据作为参数添加到已有数据结尾处
StringBuffer insert(index,数据);可以将数据插入到指定index位置

StringBuffer aa = new StringBuffer();
StringBuffer bb = aa.append(34);
System.out.println(aa);
System.out.println(bb);

结果:aa与bb相等,面盆理论

StringBuffer aa = new StringBuffer();
aa.append("abc").append("123");

结果:abc123

StringBuffer aa = new StringBuffer();
aa.append("abc").append("123");
aa.intert(1,qq);

结果:aqqbc123

2.删除

StringBuffer delete(start,end);包含头不包含尾
StringBuffer deleteCharAt(index);删除指定位置的字符串

StringBuffer aa = new StringBuffer("abcde");
aa.delete(1,3);
//清空缓冲区
aa.delete(0,aa.length());

结果:ade

3.获取

char charAt(int index);
int indexOf(String str);
int lastIndexOf(String str);
int length();
String subString(int start, int end);

4.修改

String replace(int start, int end, String str);
void serCharAt(inde index, char ch);

StringBuffer aa = new StringBuffer("abcde");
aa.replace(1,4,java);

结果:ajavae

aa.setCharAt(2,'k');

结果:abkde

5.反转

StringBuffer reverse();

6.将缓冲区中指定数据存储到指定数组中

void getChars(int srcBegin, int srcEnd, char[] dst,int dstBegin);

StringBuffer aa = new StringBuffer("abcde");
char[] chs = new char[4];
aa.getChars(1,4.chs,1);//包含头不包含尾
for (int x=0l x< chs.length;x++){
System.out.println("chs["+x+"]="+chs+";");

结果:
chs[0]= ;
chs[1]= b;
chs[2]= c;
chs[3]= d;

  • StringBuilder

JDK1.5版本时候出现了StringBuilder
StringBuffer是线程同步的
StringBuilder是线程不同步的
升级三个因素:
1.提高效率
2.简化书写
3.提高安全性

相关文章

网友评论

      本文标题:Java基础---字符串StringBuffer,StringB

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