黑马程序员技术交流社区
标题:
对StringBuffer相关知识点的总结
[打印本页]
作者:
LoveMyself
时间:
2015-5-25 01:56
标题:
对StringBuffer相关知识点的总结
本帖最后由 LoveMyself 于 2015-5-25 01:57 编辑
有关StringBuffer的部分常用知识点:
StringBuffer是字符串的缓冲区,长度可变化,可以操作多个数据类型,
可以通过toString方法将其转换为字符串
容器声明:StringBuffer sb = new StringBuffer();
主要方法简介:
1、存储
a、StringBuffer append(Object obj);//追加制定字符串到字符串尾部
b、StringBuffer insert(int offset ,Object obj);
//向指定位置插入Object类型字符串
2、删除
a、StringBuffer delete(start,end);//删除缓冲区中的数据,
包含stsrt,不包含end
b、StringBuffer deleteCharAt(index);//删除指定位置字符
c、StringBuffer delete(0,sb.length());//清空缓冲区
3、获取
a、char charAt(int index);//获取只能固定位置的字符
b、int indexOf(String str);//通过查找,返回该字符串在原串位置
c、int lastIndexOf(String str);//从字符串尾部索引
d、String substring(int start,int end);//获取指定位置的字符串
4、修改
a、StringBuffer replace(int start,int end,String str);
//用新字符串替换指定期间字符串
b、void setCharAt()//替换掉指定索引位置的字符
5、反转
StringBuffer reverse();//将制定字符串反转
6、将指定字符串加入到ch[]数组中
void getChars(int strBegin , int strEnd , chr[] name , int charBegin);
下面是部分示例代码:
public class StringBufferDemo {
//声明全局
/**
* 1、StringBuffer 增的方法
* 2、删的方法
* 3、修改的方法
* 4、查的方法
*/
//创建全局StringBuffer容器
static StringBuffer sb = new StringBuffer();
//增加内容
static StringBuffer str = sb.append("iloveyou");
public static void main(String[] args) {
addMethod();
deleteMethod();
changeMethod();
getCharDemo();
}
//StringBuffer增的方法
public static void addMethod()
{
//向指定的地方插入字符串
str.insert(0, "你好");
printMethod("str:"+str);
}
//StringBuffer删的方法
private static void deleteMethod() {
//删除指定区间的字符串
StringBuffer str1 = str.delete(2,5);
str.length();
printMethod(str1);
//删除指定位置的字符串
StringBuffer str2 = str.deleteCharAt(4);
printMethod(str2);
}
//改的方法
public static void changeMethod() {
//用replace方法实现字符串修改
StringBuffer str3 = str.replace(2, 4, "helloword");
printMethod(str3);
//用setChar方法实现字符串修改
str.setCharAt(11, '你');
printMethod(str);
}
//将字符串中的元素存入到指定的字符数组
public static void getCharDemo()
{
String s = "hfsdhfsfsfjhs";
char[] ch = new char[5];
s.getChars(1, 6, ch, 0);
for(int x=0;x<ch.length;x++)
{
System.out.println("ch["+x+"]:"+ch[x]);
}
}
//打印方法
public static void printMethod(Object obj)
{
System.out.println(obj);
}
}
复制代码
作者:
zzlin
时间:
2015-5-25 07:38
StringBuffer是线程同步的
作者:
LoveMyself
时间:
2015-5-25 09:36
zzlin 发表于 2015-5-25 07:38
StringBuffer是线程同步的
谢谢指点,我回头再加上
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2