java中StringBuffer类型字符串处理小结

public class UseMethodOfStringBuffer {
	/**
	 * @StringBuffer
	 * author victor
	 */
	public static void main(String[] args) {
		// StringBuffer的四个构造函数
		StringBuffer sb1 = new StringBuffer();
		StringBuffer sb2 = new StringBuffer(5);
		String str = "abcde";
		StringBuffer sb3 = new StringBuffer(str);
		StringBuffer sb4 = new StringBuffer("abcde");
		//length方法获得对象的当前长度,capacity获得已分配容量
		System.out.println(sb1.capacity()+"  "+sb1.length());//默认构造函数预留16个字符的空间
		System.out.println(sb2.capacity()+"  "+sb2.length());//接收一个显示设置缓存大小的整型参数
		System.out.println(sb3.capacity()+"  "+sb3.length());//接受一个初始化String的参数并额外分配16个字符
		System.out.println(sb4.capacity()+"  "+sb4.length());//额外分配16个字符
		sb1.ensureCapacity(5);
		sb1.setLength(5);
		System.out.println(sb1.capacity()+"  "+sb1.length());
		System.out.println("before  " + sb3.charAt(1));//获得字符串特定位置的字符
		sb3.setCharAt(1, 'o');//设置字符串特定位置的字符为新字符
		System.out.println("after  " + sb3.charAt(1));
		char []chars = new char[5];
		sb4.getChars(0, 5, chars, 0);//getChars获得某个字符串的字串
		System.out.println(chars);
		sb2.append("a = ").append(42).append('!').toString();//append将各种其他类型数据的字符串表示形式连接到调用StringBuffer对象的末尾
		System.out.println(sb2 + "  " + sb2.capacity()+"  "+sb2.length());
//		insert将一个字符串插入到另一个字符串中
		sb2.insert(6, 76.43);
		System.out.println(sb2 + "  " + sb2.capacity()+"  "+sb2.length());
		//reverse颠倒StringBuffer对象中的字符
		System.out.println(sb3.reverse());
//		StringBuffer delete(int startIndex,int endIndex)
		System.out.println("After delete" + sb2.delete(0, 4));
//		StringBuffer deleteCharAt(int loc)
		System.out.println("After delete charAt" + sb2.deleteCharAt(0));
//		replace可以用一个字符集替换另一个字符串中的字符集。StringBuffer replace(int startIndex,int endIndex,String str)
		StringBuffer sb5 = new StringBuffer("This is a test.");
		System.out.println("After replace:" + sb5.replace(5, 7, "was"));
//		subString和indexOf以及lastIndexOf方法和String的用法一样
//		StringBuilder和StringBuffer的区别是StringBuilder不是同步的不是线程安全的,性能更快
	}

}输出结果为:
16  0
5  0
21  5
21  5
16  5
before  b
after  o
abcde
a = 42!  12  7
a = 4276.43!  12  12
edcoa
After delete4276.43!
After delete charAt276.43!
After replace:This was a test.


转载于:https://my.oschina.net/u/1415012/blog/182551

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值