假设我有一个字符串string s ="abcd" 我想得到它的倒序 即输出结果为 s="dcba" 请问该如何才能完成

解决方案 »

  1.   

    支持楼上的方法 用StringBuffer
    里面reverse()方法 专门就是倒序
      

  2.   

    受教了,以前不知道有这个方法的。随手写个代码存这里。
    纯属路过,分给1楼。
    public static void main(String[] args) {
    String a = "abcd";
    StringBuffer sb = new StringBuffer(a);
    a = sb.reverse().toString();
    System.out.println(a); }
      

  3.   

    String对象是常量,StringBuffer对象不是常量.
    如果需要倒序,就使用StringBuffer的reverse()方法吧.
      

  4.   

    common.lang库:
    字符的全部反转及以单个词为单位的反转
      String original = "In time, I grew tired of his babbling nonsense.";
      StringUtils.reverse( original )   = ".esnesnon gnilbbab sih fo derit werg I ,emit nI"
      以单个词为单位的反转
      public Sentence reverseSentence(String sentence) {
        String reversed = StringUtils.chomp( sentence, "." );
        reversed = StringUtils.reverseDelimited( reversed, ' ' );
        reversed = reversed + ".";
        return reversed;
      }
      String sentence = "I am Susan."
      reverseSentence( sentence ) )   = "Susan am I."我的新书刚上架,欢迎订购:
    《搜索引擎零距离—基于Ruby+Java搜索引擎原理与实现》 清华出版社。
    http://www.huachu.com.cn/itbook/itbookinfo.asp?lbbh=10105450
      

  5.   

    学习,以前只知道顺序排序,现在还有reverse方法,哈哈
      

  6.   

    将字符串字符逐个放入一个stack中,然后再逐个从stack中取出拼成一个新串
      

  7.   

    public class Test5 {
        
        public static void main(String[] args) {        
            String str = "abcdefg";
            System.out.println(reverse(str));
        }
        
        public static String reverse(String str) {
            if(str == null || str.length() < 2) {
                return str;
            }
            char[] chs = str.toCharArray();
            for(int i = 0, k = chs.length / 2; i < k; i++) {
                char c = chs[i];
                chs[i] = chs[chs.length - i - 1];
                chs[chs.length - i - 1] = c;
            }
            return new String(chs);
        }
    }
      

  8.   

    public class Test2 { 
    public static void main (String[] args) {

    String s="abcd";
    char[] start=s.toCharArray();
    char[] end=new char[s.length()];
    for(int i=s.length()-1,j=0;i>=0;i--,j++)
    {
    end[j]=start[i];
    }
    String str=String.valueOf(end);
    System.out.println(str);
    }
    }
    呵呵 这是我写的  不过没3楼的精炼
      

  9.   

    18L GOOD!没有用现成的方法,自己实现的!
      

  10.   


              public String reverse(String s) {

    char[] chs = new char[s.length()];
    int count = 0;

    for(int i = s.length()-1; i >= 0; i--) {
    char c = s.charAt(i);

    chs[count++] = c;
    }

    String rev = new String(chs); return rev;
             }