Java中字符串反转的四种求法

package day16;
//字符串反转
public class StringReverse {
	public static void main(String[] args) {
		String s = "嫣唐是神女的我";
		String s1 = reverse(s);
		System.out.println(s1);
		System.out.println("---------");
		String s2 = reverse1(s);
		System.out.println(s2);
		System.out.println("---------");
		String s3 = reverse2(s);
		System.out.println(s3);
	    System.out.println("---------");
		String s4=reverse3(s);
	    System.out.println(s4);
	}
//方式一:利用StringBuffer类的reverse()和toString()方法:
	private static String reverse2(String s) {
		StringBuffer sb = new StringBuffer(s);
		// sb.append(s);
		StringBuffer sb1 = sb.reverse();
		String s1 = sb1.toString();
		return s1;
	}
//方式二:利用String类的charAt()方法:
	private static String reverse1(String s) {
		String s2 = "";
//	for(int i=0;i<s.length();i++) {
//		 s2=s.charAt(i)+s2;
//用s2 += s.charAt(i);则for循环必须要逆着遍历,但是用s2=s.charAt(i)+s2;
//则和for循环没关系,无论正向遍历还是逆向遍历,其结果都会反转.
//	}
		for (int i = s.length() - 1; i >= 0; i--) {
			s2 += s.charAt(i);
		}
		return s2;
	}
//方式三:利用String类的toCharArray()方法:
	private static String reverse(String s) {
		String s1 = "";
		char[] chas = s.toCharArray();
		for (int i = 0; i < chas.length; i++) {
			s1 = chas[i] + s1;
		}
		return s1;
	}
//方式四:利用String类的toCharArray()方法交换
	private static String reverse3(String s) {
		char [] chas=s.toCharArray();
		for(int i=0;i<(chas.length/2);i++) {
		char temp=chas[i];
        chas[i]=chas[chas.length-1-i];
        chas[chas.length-1-i]=temp;
		}
		return s.valueOf(chas);
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值