有一个字符串:asff
通过java编写让此字符串按倒序排列,ffsa
注意效率。
大家有什么好办法啊。
 

解决方案 »

  1.   

    StringBuffer类有reverse()方法,将字符序列用其反转形式取代。
      

  2.   

    public static void main(String[] args){
     
    StringBuffer str1=new StringBuffer("abcdef");
        str1.reverse();
    System.out.print(str1);
    }
      

  3.   

    public String reverse(String str){
    char[] chars=str.toCharArray();
    char temp;
    int length=chars.length-1;
    int divde=(length+1)/2;
    for(int i=0;i<divde;i++){
    temp=chars[i];
    chars[i]=chars[length-i];
    chars[length-i]=temp;
    }
    return String.valueOf(chars);
    }
    这个够快吧,字符串越长 ,越快
      

  4.   

    不用再优化了 StringBuffer的reverse已经最优了
      

  5.   

    StringBuffer 应该相当不错了
      

  6.   

    public class Demo1 {
    public static void main(String[] args)
    {
    StringBuilder str=new StringBuilder("asff");
            str.reverse();
            System.out.println(str.toString());
    }}解释下:楼上几位同志用的StringBuffer类的方法。  但是我用的StringBuilder
    区别:1,StringBuffer中的方法都使用了Synchronized修饰(可以看源代码),而StringBuilder没有。而是用了Synchronized修饰:
    好处: 线程安全
    坏处:运行效率低所以,用我的那个方法,应该效率算最高的了!
      

  7.   

    StringBuilder str=new StringBuilder("字符串");
            str.reverse();