锁定老帖子 主题:字符串翻转
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-20
longrm 写道 public static String turn(String str) { char[] result = str.toCharArray(); for(int i=0; i<str.length()/2; i++) { result[i] = str.charAt(str.length()-i-1); result[str.length()-1] = str.charAt(i); } return new String(result); } 上面的有点错,应该是这样的: result[str.length()-i-1] = str.charAt(i); |
|
返回顶楼 | |
发表时间:2008-10-20
longrm 写道 public static String turn(String str) {
char[] result = str.toCharArray(); for(int i=0; i<str.length()/2; i++) { result[i] = str.charAt(str.length()-i-1); result[str.length()-1] = str.charAt(i); } return new String(result); } 请确认你的代码是正确的在贴出来,谢谢!!! |
|
返回顶楼 | |
发表时间:2008-10-20
lz的实现方式是效率上应该是最差的了
|
|
返回顶楼 | |
发表时间:2008-10-20
superjavason 写道 lz的实现方式是效率上应该是最差的了 new StringBuilder("ab").reverse().toString(); 搞定 |
|
返回顶楼 | |
发表时间:2008-10-20
color4you 写道 StringBuffer sb = new StringBuffer(str); return sb.reverse(); 最简单的就是最好的! |
|
返回顶楼 | |
发表时间:2008-10-20
<< >>呵呵,这两个运算符,都快忘记了,呵,.....什么时候也拿来用用...
|
|
返回顶楼 | |
发表时间:2008-10-21
color4you 写道 StringBuffer sb = new StringBuffer(str); return sb.reverse(); |
|
返回顶楼 | |
发表时间:2008-10-21
StringBuffer sb = new StringBuffer(str);
return sb.reverse(); 不过目前一般最好用:StringBuilder StringBuilder sb = new StringBuilder("abcdefg"); return sb.reverse() ; |
|
返回顶楼 | |
发表时间:2008-10-21
我的代码,不知道和楼上的楼上的.....N次楼上有啥区别?
String str = new String("abc"); char[] chararray = str.toCharArray(); StringBuffer sb = new StringBuffer(); for(int i=chararray.length-1;i>=0;i--){ sb.append(chararray[i]); } System.out.println(sb.toString()); |
|
返回顶楼 | |
发表时间:2008-10-21
递归的
public static String reverse1(String str) { if(str.length()>0) { return str.substring(str.length()-1)+reverse1(str.substring(0,str.length()-1)); } return ""; } |
|
返回顶楼 | |