黑马程序员技术交流社区

标题: 求给出更简化的代码? [打印本页]

作者: 杨玉辉    时间: 2013-4-7 15:57
标题: 求给出更简化的代码?
本帖最后由 杨玉辉 于 2013-4-7 16:12 编辑
  1. package cn.itheima;

  2. import static java.util.Arrays.*;
  3. import java.util.Collections;
  4. import java.util.List;

  5. public class ReverseString {

  6.         /**
  7.          * @param args
  8.          */
  9.         public static void main(String[] args) {
  10.                 // TODO Auto-generated method stub
  11.                 //String s1 = "abcdefg";
  12.                 String s1 = "a kdeg3453464esfswe ";
  13.                
  14.                                 
  15.                 String[] sr = s1.split("");
  16.                 List<String> list = asList(sr);
  17.                 Collections.reverse(list);
  18.                 String[] arr = list.toArray(new String[list.size()]);
  19.                 String s3="";
  20.                 for(String s2: arr){
  21.                         System.out.print(s3.concat(s2));
  22.                 }                }
  23. }
复制代码
将字符串切割,获取字符串数组存入List集合,结合Collections 工具类的reverse()方法,翻转后转换成字符串数组,然后,构造一个新的空字符串s3将数组元素以字符串形式添加进来,实现翻转功能
  1.                 StringBuffer sb = new StringBuffer();
  2.                
  3.                         sb.append(s1);
  4.                
  5.                 System.out.println(sb.reverse());
  6.                
复制代码

作者: 随便    时间: 2013-4-7 16:34
你不是已经给出了么?还问?
变成已解决吧。
作者: 我手心里的宝    时间: 2013-4-7 16:57
你这个问题提的不会有技术分
作者: 朱晓杰    时间: 2013-4-7 17:05
我认为最简单的是这种写法了
public static String reverse4(String s) {

          return new StringBuffer(s).reverse().toString();
       
}
作者: 朱晓杰    时间: 2013-4-7 17:05
和楼主下面补充的一样
作者: 杨玉辉    时间: 2013-4-7 17:10
补充一点哈,除了最后的那段代码,呢?




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