黑马程序员------------------String和StringBuffer
来源:互联网 发布:淘宝开店要押金吗 编辑:程序博客网 时间:2024/05/01 01:01
String它的对象表示的是一个常量,它的值创建后不能改变。
StringBuffer是一个字符串缓冲区,它的底层是一个数组,
它可以将所有的字符串都保存到这个数组中。
StringBuffer的构造方法
1. StringBuffer();
构造一个默认长度为16个字符的字符串缓冲区
StringBuffer buff=new StringBuffer(); //相当于在底层默认创建了一个char[] ch=new char[16];
2. StringBuffer(int len)
构造一个指定长度的字符串缓冲区
StringBuffer buff=new StringBuffer(5);//在底层创建一个char[] ch=new char[5];
3. StringBuffer(String s);
构造一个具有指定内容的StringBuffer
StringBuffer buff=new StringBuffer("abc");//在底层创建一个char[] ch={'a','b','c'};
成员方法
1.append方法(重点)
声明:public StringBuffer append(参数 c)
参数类型可以是:1.基本类型 2.char[] 3.Object 4.String或StringBuffer
返回值是StringBuffer
作用:向StringBuffer上添加内容
对于字符串连接时我们建议使用append方法,而不要使用+操作。
//append方法
public static void method1(){
StringBuffer buff=new StringBuffer();
buff.append("abc").append(123).append(true).append(new Object()).append(new char[]{'x','y','z'});
System.out.println(buff); //StringBuffer重写了toString方法
}
在实际开发中append方法什么时候应用的比较多?
1.toString方法
2.在ajax开发,经常会从服务器向客户端返回一个字符串信息,这个字符串是
一些相关信息的组合,那么在组合这些信息时会使用到append方法.
2.insert方法
声明:public StringBuffer insert(int offset,参数 c)
将c插入到offset这个位置
作用:是将指定的数据插入到指定的位置
//insert演示
public static void method3(){
StringBuffer buff=new StringBuffer("abc");
buff.insert(1,"xyz");
System.out.println(buff);
}
3.delete
1.声明 public StringBuffer delete(int start,int end)
作用 删除StringBuffer中从start开始到end结束的字符,不包含end
//delete(int start,int end)
public static void method1(){
StringBuilder buff=new StringBuilder("abcdef");
buff.delete(1,3);
System.out.println(buff);
}//adef (删前不删后)
2.声明 public StringBuffer deleteCharAt(int index);
作用 删除StringBuffer中index位置上的字符.
//deleteCharAt(int index)
public static void method2(){
StringBuffer buff=new StringBuffer("abcdef");
buff.deleteCharAt(1);
System.out.println(buff);
}// acdef
4.reverse
声明 public StringBuffer reverse();
作用 将StringBuffer反转
//reverse
public static void method3(){
StringBuffer buff=new StringBuffer("abcdef");
StringBuffer rb=buff.reverse();
System.out.println(rb);
}//fedcba
5.其它方法
setCharAt 方法
声明 public void setCharAt(int index,char c);
作用 使用c替换index位置上的字符
//setCharAt
public static void method4(){
StringBuffer buff=new StringBuffer("abcdef");
buff.setCharAt(0,'k');
System.out.println(buff);
}//kbcdef
trimToSize();
当我们使用StringBuffer进行操作时,底层数组会越来越大,
这个方法可以将数组中没有使用的空间清理掉,它可以提高空间的利用率;
String类中提供的大部分方法我们在StringBuffer中也可以找到。
StringBuffer与StringBuilder功能相似,StringBuffer中提供的方法在StringBuilder中也有。
StringBuffer是线程的安全的(同步),它的效率比较低.
StringBuilder是线程不安全(异步),它的效率比较高
---------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流!---------------详细请查看:http://edu.csdn.netString与StringBuffer转换
String----->StringBuffer
new StringBuffer(String s);
StringBuffer--->String
toString()
new String(StringBuffer buff);
- 黑马程序员-------String 和StringBuffer
- 黑马程序员------------------String和StringBuffer
- 黑马程序员—String和StringBuffer
- 黑马程序员-String类和StringBuffer
- 黑马程序员-String、StringBuffer和StringBuilder
- 黑马程序员--String和StringBuffer的应用
- 黑马程序员-string和stringbuffer总结
- 黑马程序员:String类和StringBuffer类
- 黑马程序员——String和StringBuffer
- 黑马程序员--String类和StringBuffer类
- 黑马程序员 String和StringBuffer的区别
- 黑马程序员 String StringBuffer
- <黑马程序员>String与StringBuffer
- 黑马程序员 String 与StringBuffer
- 黑马程序员--String&StringBuffer&StringBuilder
- 黑马程序员---String与StringBuffer
- 黑马程序员-String类、StringBuffer
- 黑马程序员-String、StringBuffer、StringBuilder
- GIS专业就业之职业态度——转:职场人必看 十句话让您在职场少奋斗30年
- The Difference Between Trees and Hash Tables
- Scalable Architectures
- Wireshark抓包工具使用教程以及常用抓包规则
- 一些算法的MapReduce实现——1 TB数据排序源码分析
- 黑马程序员------------------String和StringBuffer
- liblas库学习笔记一
- QQ的通信协议
- Code Forces 379D New Year Letter
- 我们能从java的HelloWorld学到什么?
- 实时数据库的经典书
- 黑马程序员_泛型总结(2)
- 全局变量和局部变量在内存里的区别
- 杭电1061 解题报告