黑马程序员技术交流社区

标题: 大神帮帮帮,字符串的反转,希望能有更简洁的代码 [打印本页]

作者: 土菠萝    时间: 2016-5-30 14:54
标题: 大神帮帮帮,字符串的反转,希望能有更简洁的代码
我们把“cba”称为“abc”的反转串。
求字符串String tuboluo的反串
作者: TS-松子    时间: 2016-5-30 16:07
String类有个toCharArray的方法,可以把字符串转化为字符数组,反过来遍历就好了。
作者: TS-松子    时间: 2016-5-30 16:12
刚写了下代码,你试试
public class Demo {
        public static void main(String[] args) {
                String s = "tuboluo";
                char[] ch = s.toCharArray();
                String s1 = "";
                for (int i = ch.length-1; i >= 0; i--) {
                        s1+=ch[i];
                }
                System.out.println(s1);
        }
}

作者: 左星辰    时间: 2016-5-30 17:31
先转StringBuilder再调reverse方法再toString
作者: 黑猫的消失    时间: 2016-5-30 18:53
3楼的代码能很好的达成楼主的要求
作者: 刘凯强    时间: 2016-5-30 19:02
TS-松子 发表于 2016-5-30 16:12
刚写了下代码,你试试
public class Demo {
        public static void main(String[] args) {

s1 += ch 是什么作用呢?
作者: TS-松子    时间: 2016-5-30 20:45
本帖最后由 TS-松子 于 2016-5-30 20:47 编辑
刘凯强 发表于 2016-5-30 19:02
s1 += ch 是什么作用呢?

是s1+=ch,目的是把遍历出来的字符组合成字符串,其中ch是从数组中倒着拿到的每一个字符。
作者: 土菠萝    时间: 2016-5-31 08:51
黑猫的消失 发表于 2016-5-30 18:53
3楼的代码能很好的达成楼主的要求

试试我这个

public static String reverseString(String x)
        {
                if(x==null || x.length()<2) return x;
                return reverseString(x.substring(1))+ x.charAt(0);
        }
作者: 土菠萝    时间: 2016-5-31 08:53
public static String reverseString(String x)
        {
                if(x==null || x.length()<2) return x;
                return reverseString(x.substring(1))+ x.charAt(0);
        }
作者: 15232636900    时间: 2016-5-31 08:54
String类有toCharArray的方法,可以把字符串转化为字符数组,反过来遍历就好了
作者: 782083354    时间: 2016-5-31 12:56
强势顶起1!!!!
作者: 革命卍    时间: 2016-5-31 20:49
StringBuild反转
作者: ancheng    时间: 2016-5-31 21:16
  1. private static String reveerseString(String str) {
  2.                 StringBuilder sb = new StringBuilder(str);
  3.                 sb.reverse();
  4.                 return sb.toString();
  5.         }
复制代码





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