从零双排学java之StringBuffer与StringBuilder

                StringBuffer与StringBuilder

StringBuffer与StringBuilder都是可变的字符序列
区别在于:

StringBufferjdk1.0出来的  优点:线程安全 弊端:耗费系统资

StringBuilder  jdk1.5  线程不安全了  但是节省系统资源


String 线程不安全  是不可变的字符序列(不能修改字符串本身)


下面简单介绍几个方法:

1.拼接 append

private static void fun1() {
		// 创建STringBuffer对象
		StringBuffer sb = new StringBuffer();
		// 容量默认 16
		System.out.println(sb.capacity());
		// 长度
		System.out.println(sb.length());
		// 拼接
		StringBuffer buffer = sb.append("laozhao");
		System.out.println(buffer.toString());
		// StringBuffer 转换成字符串类型
		String string = sb.toString();
		System.out.println(string);
	}

2.插入 修改  insert  setCharAt

private static void fun2() {
		// 插入
		StringBuffer sb = new StringBuffer("wanglong");
		sb.insert(4, "da").append("nb");
		System.out.println(sb);
		// 修改
		sb.setCharAt(1, 'x');
		System.out.println(sb);
	}

3.删除   delete

private static void fun3() {
		StringBuffer stringBuffer = new StringBuffer();
		stringBuffer.append("wanglong");
		// 删除 留头不留尾[0,4)
		// 结束坐标大于字符串的长度 相当于清空字符串
		stringBuffer.delete(0, 4);
		System.out.println(stringBuffer);
		// 注意:传入的是要删除的字符角标
		stringBuffer.deleteCharAt(2);
		System.out.println(stringBuffer);

		// 获取stringbuffer中的字符
		char charAt = stringBuffer.charAt(1);
		System.out.println(charAt);
		// 字符数组 转化成 stringbuffer对象
		char[] arr = { 'a', 'b', 'c' };
		String valueOf = String.valueOf(arr);
		System.out.println(valueOf);
		StringBuffer sb = new StringBuffer(valueOf);
		System.out.println(sb);
	}

4.反转  reverse

private static void fun4() {
		// 键盘输入一个字符串,将字符串反转
		System.out.println("请输入字符串");
		Scanner scanner = new Scanner(System.in);
		String str = scanner.nextLine();
		// 转换成stringbuffer对象
		StringBuffer sb = new StringBuffer(str);
		sb.reverse();
		System.out.println(sb.toString());
	}

5.替换 replace

private static void fun5() {
		// 替换
		StringBuffer stringBuffer = new StringBuffer();
		stringBuffer.append("wanglong");
		stringBuffer.replace(0, 4, "lixiao");
		System.out.println(stringBuffer);
	}

猜你喜欢

转载自blog.csdn.net/jsymax/article/details/80359230