A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 明天你好,微笑 中级黑马   /  2015-8-19 20:33  /  585 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

将字符串中进行反转。abcde --> edcba

12 个回复

倒序浏览
求解答,求大神支招
回复 使用道具 举报
  1. public class text06 {

  2.         public static void main(String[] args) {
  3.                 String s = bk("abcde");
  4.                 System.out.println(s);
  5.         }
  6.         public static String bk(String s){
  7.                 char[]ch =s.toCharArray();
  8.                 StringBuilder s1 = new StringBuilder();
  9.                 for(int i=(ch.length-1);i>=0;i--){
  10.                         s1.append(ch[i]);
  11.                 }
  12.                 return s1.toString();
  13.         }
  14. }
复制代码


思路大概就是 把字符串转换成 字符数组,然后定义一个容器,把字符数组从后往前 依次存入容器中 over
还有更简单的方法 用集合转
回复 使用道具 举报
转成字节数组然后反转数组元素就好了
回复 使用道具 举报
直接把这字符串放到StringBuffer或者StringBuilder里面,然后调用他们的reverse()方法
System.out.println(new StringBuffer("abcdefgh").reverse());
这不一行代码就搞定的事情?
回复 使用道具 举报 1 0
把字符串变成数组,
头的角标递增,尾的角标递减,然后互换。。
最后再将数组转成字符串。。
毕老师的视频里面有。。
回复 使用道具 举报
当然最简单的你可以将字符串传入StringBuffer里面直接调用reverse方法。。。
回复 使用道具 举报
public static string ReverseByArray(string original) { char[] c = original.ToCharArray(); Array.Reverse(c); return new string(c); }
回复 使用道具 举报
Liveei 中级黑马 2015-8-20 23:17:57
9#
都是牛人,我还没学到这
回复 使用道具 举报
老师上课讲过吧
回复 使用道具 举报
StringBuilder sb=new StringBuilder();
for(int x=str.length-1;x>=0;x--){
       sb.append(str.CharAt(x));
}
System,out.println(sb);
回复 使用道具 举报
史柯 发表于 2015-8-21 09:03
StringBuilder sb=new StringBuilder();
for(int x=str.length-1;x>=0;x--){
       sb.append(str.CharAt( ...

这个方法简答,容易懂
StringBuilder是字符串缓冲区,可以当成String
回复 使用道具 举报
T-l-H、小生 发表于 2015-8-19 22:09
直接把这字符串放到StringBuffer或者StringBuilder里面,然后调用他们的reverse()方法
System.out.println ...

就这么干
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马