《java入门第一季》之StringBuffer小案例

这里是针对其反转功能来举的例子,再对比之前写的一篇String类的反转功能,StringBuffer明显提高了代码量,提高了效率。

import java.util.Scanner;

/*
 * 把字符串反转
 */
public class StringBufferTest3 {
	public static void main(String[] args) {
		// 键盘录入数据
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入数据:");
		String s = sc.nextLine();

		// 方式1:用String做拼接
		String s1 = myReverse(s);
		System.out.println("s1:" + s1);
		// 方式2:用StringBuffer的reverse()功能reverse()直接把给的数组反转了
		String s2 = myReverse2(s);
		System.out.println("s2:" + s2);
	}

	// 用StringBuffer的reverse()功能
	public static String myReverse2(String s) {

		// 简易版,链式编程
		return new StringBuffer(s).reverse().toString();//一行解决
	}

	// 用String做拼接
	public static String myReverse(String s) {
		String result = "";

		char[] chs = s.toCharArray();//将此字符串转s换为一个新的字符数组。String类下面的方法 public char[] toCharArray()
		for (int x = chs.length - 1; x >= 0; x--) {//倒着进行字符数组遍历
			result += chs[x];//拼接又成了String类型了,可以把结果直接返回。
		}

		return result;
	}
}


原文地址:https://www.cnblogs.com/wanghang/p/6299828.html