黑马程序员技术交流社区

标题: 将字符串中进行反转。abcde --> edcba 这题大家会吗? [打印本页]

作者: 风轻云淡139    时间: 2016-9-16 00:41
标题: 将字符串中进行反转。abcde --> edcba 这题大家会吗?
将字符串中进行反转。abcde --> edcba

作者: 长空皓月    时间: 2016-9-16 09:08
在不直接用reverse方法的前提下,可以这样做:先将字符串转化成数组,然后倒着遍历,用StringBuffer(或者直接字符串)进行拼接.
以上思路仅供参考,方法很多,能解决问题就行
作者: 小菜白白白    时间: 2016-9-16 09:44
可以直接转为字符数组反向遍历,或赋值给一个StringBufferd,用StringBuffer的reverse方法,再转为字符串。
作者: tiamo305    时间: 2016-9-16 10:18
楼上说的都有理由
作者: ancheng    时间: 2016-9-16 11:09
[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);
                }
                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();
        }

}

作者: 370452158    时间: 2016-9-16 11:10
将字符串转换程Stringbuffer 然后直接调用reverse方法直接就可以反转
作者: yonghu    时间: 2016-9-16 22:27
//实例:将字符串 “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);
作者: xianghui0521    时间: 2016-9-16 22:36
点招 你要记住 复杂的  .    真正开发的话 都是 运用 简单的方法.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2