A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

将字符串中进行反转。abcde --> edcba

7 个回复

倒序浏览
在不直接用reverse方法的前提下,可以这样做:先将字符串转化成数组,然后倒着遍历,用StringBuffer(或者直接字符串)进行拼接.
以上思路仅供参考,方法很多,能解决问题就行
回复 使用道具 举报
可以直接转为字符数组反向遍历,或赋值给一个StringBufferd,用StringBuffer的reverse方法,再转为字符串。
回复 使用道具 举报
楼上说的都有理由
回复 使用道具 举报
[Java] 纯文本查看 复制代码
/**
 * 
 * @author AnCheng
 *
 */
public class StringReverse {

	public static void main(String[] args) {

		String str = "I love you";
		// 第一种
		String s1 = reverse1(str);
		System.out.println(s1);
		// 第二种
		String s2 = reverse2(str);
		System.out.println(s2);
		// 第三种
		String s3 = reverse3(str);
		System.out.println(s3);
		// 第四种
		String s4 = reverse4(str);
		System.out.println(s4);

	}

	private static String reverse4(String str) {
		StringBuilder sb = new StringBuilder();
		char[] arr = str.toCharArray();
		for (int i = arr.length - 1; i >= 0; i--) {
			sb.append(arr[i]);
		}
		return sb.toString();
	}

	private static String reverse3(String str) {
		String s = "";
		for (int i = str.length() - 1; i >= 0; i--) {
			s += str.charAt(i);
		}
		return s;
	}

	private static String reverse2(String str) {
		StringBuffer sb = new StringBuffer(str);
		return sb.reverse().toString();
	}

	private static String reverse1(String str) {
		StringBuilder sb = new StringBuilder(str);
		return sb.reverse().toString();
	}

}
回复 使用道具 举报 1 0
将字符串转换程Stringbuffer 然后直接调用reverse方法直接就可以反转
回复 使用道具 举报
yonghu 初级黑马 2016-9-16 22:27:48
7#
//实例:将字符串 “beijing” 反转顺序,并将首尾字母转成大写 //其它字母为小写,并输出结果字符串 var str = "bEIjING"; //(0)将字符串变成全小写 str = str.toLowerCase(); //(1)将字符串转成数组 var arr = str.split(""); //(2)反转数组中各元素顺序 arr.reverse(); //(3)将数组第1个和最后1个字符转成大写 arr[0] = arr[0].toUpperCase(); arr[arr.length-1] = arr[arr.length-1].toUpperCase(); //(4)将数组转成字符串 str = arr.join(""); //(5)输出结果 window.alert(str);
回复 使用道具 举报
点招 你要记住 复杂的  .    真正开发的话 都是 运用 简单的方法.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马