黑马程序员技术交流社区

标题: 关于字符串反转的问题 [打印本页]

作者: Xiacker    时间: 2013-12-15 15:17
标题: 关于字符串反转的问题
  1. public static String reverse4(String s){
  2.                 String reverse="";
  3.                 for(int i=0;i<s.length();i++){
  4.                         reverse=s.charAt(i)+reverse;
  5.                 }
  6.                 return reverse;
  7.         }
复制代码


这也能反转过来求大神解答?
作者: 发哥-阿花    时间: 2013-12-15 15:46
是可以的,每次循环取出角标为i的字符,并与字符串""相加,就相当于将原字符串的第一个加在新字符串的第一个,每次取出原字符串的第一个,就往新字符串的第一个加,循环到最后时就是原字符串的最后一个加到新字符串的最前面一个,这样就实现了反转的功能;

  1. <P>public static String reverse4(String s){
  2.            String reverse="";
  3.            for(int i=0;i<s.length();i++){
  4.                 reverse=s.charAt(i)+reverse;//每次循环都将i索引位置的字符添加到reverse的前面,循环结</P>
  5. <P>                                                                //束,最后面一个字符就添加到reverse的最前面了,
  6.            }
  7.            return reverse;
  8. }</P>
复制代码

这样说看得懂吗?




作者: 75100313    时间: 2013-12-16 20:27
{:soso_e120:} 关键要看 怎么加  方法很简单 每次取到一个数值

关键是reverse 的加法
每次取到一个数值 是加在原来的数值的前面   第一个取出来的 越来越靠后  最后一个取出来的 反而在最前面
当然可以反转!




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