JAVA中的字符串反转
来源:互联网 发布:mac os sierra反应快吗 编辑:程序博客网 时间:2024/06/03 13:26
操作字符串,是JAVA中的一项常用的而且也是一种基本的能力。对于反转字符串这一看似简单的操作,里面体现了好多的字符串的应用,下面结合自己的想法与网上的方法,总结反转字符串基本上有以下一些方法。以方法表现的性能从高到底列出:
第一种方法:
public static String getRevString(String str){
String a = str;
char[] c = a.toCharArray();
int i=a.length();
i--;
char temp;
for (int count=0;count<i;count++,i-- )
{
temp=c[count];
c[count]=c[i];
c[i]=temp;
}
return new String(c,0,a.length());
}
第二种方法:
public static String getRevString(String str){
StringBuffer sb = new StringBuffer(str);
String returnStr = sb.reverse().toString();
return returnStr;
}
第三种方法:
public static String getRevString(String str){
char[] temp = str.toCharArray();
int length = temp.length;
char[] recive = new char[length];
for(int i=length;i>0;i--){
recive[length-i] = temp[i-1];
}
String temp2 = new String(recive);
return temp2;
}
第四种方法:
public static String getRevString(String s){
StringBuffer sb = new StringBuffer();
for ( int i = s.length() - 1; i >= 0; i--) {
sb .append(s.charAt(i));
}
return sb.toString();
}
最后一种方法是用递归的方法实现的:
其方法体如下:
public static String getRevString(String strTest){
if(strTest.length() == 1)
return strTest;
String strResult = strTest.substring(strTest.length() -1,strTest.length());
strResult += getRevString (strTest.substring(0,strTest.length() -1));
return strResult;
}
这种递归的方法当要反转的字符串少时,不会出现错误,但当要反转的字转串比较多时,这种方法就会报堆栈溢出错误,还没搞清是怎么回事.这种方法的性能也不是太好.
转载自:http://wusaihe.blog.163.com/blog/static/7239597120104129531235/
第一种方法:
public static String getRevString(String str){
String a = str;
char[] c = a.toCharArray();
int i=a.length();
i--;
char temp;
for (int count=0;count<i;count++,i-- )
{
temp=c[count];
c[count]=c[i];
c[i]=temp;
}
return new String(c,0,a.length());
}
第二种方法:
public static String getRevString(String str){
StringBuffer sb = new StringBuffer(str);
String returnStr = sb.reverse().toString();
return returnStr;
}
第三种方法:
public static String getRevString(String str){
char[] temp = str.toCharArray();
int length = temp.length;
char[] recive = new char[length];
for(int i=length;i>0;i--){
recive[length-i] = temp[i-1];
}
String temp2 = new String(recive);
return temp2;
}
第四种方法:
public static String getRevString(String s){
StringBuffer sb = new StringBuffer();
for ( int i = s.length() - 1; i >= 0; i--) {
sb .append(s.charAt(i));
}
return sb.toString();
}
最后一种方法是用递归的方法实现的:
其方法体如下:
public static String getRevString(String strTest){
if(strTest.length() == 1)
return strTest;
String strResult = strTest.substring(strTest.length() -1,strTest.length());
strResult += getRevString (strTest.substring(0,strTest.length() -1));
return strResult;
}
这种递归的方法当要反转的字符串少时,不会出现错误,但当要反转的字转串比较多时,这种方法就会报堆栈溢出错误,还没搞清是怎么回事.这种方法的性能也不是太好.
转载自:http://wusaihe.blog.163.com/blog/static/7239597120104129531235/
1 0
- java中的字符串反转
- JAVA中的字符串反转
- Java实现字符串中的单词反转
- 字符串反转 字符串中的单词逆序输出 java
- 反转字符串中的单词
- 反转字符串中的单词
- 面试中的字符串反转
- 反转字符串中的单词
- Python中的字符串反转
- java 反转字符串
- Java技巧:字符串反转
- Java 输出反转字符串
- 字符串反转-java
- java实现字符串反转
- Java 字符串反转实现
- Java反转字符串代码
- java 字符串的反转
- Java 字符串反转输出
- android stduio中导入slidingMenu
- spring4mvc返回json
- iOS 自定义cell
- HBase(0.96以上版本)过滤器Filter详解及实例代码
- 业余爱好者如何通过使用模板快速建站2(How do amateurs build their own websites with a template part-2)
- JAVA中的字符串反转
- 6个问题回答你什么是PMP【项目管理在工作中的应用及PMP认证考试】12月3日说明会
- 强大的命令行工具wmic
- PostgreSQL 当年的倒计时
- 文章标题
- jQuery on()方法
- 运用wrapper来帮助我们启动snap应用 --- shadowsocks 命令行
- Install multiple instances of Reporting Services on the same computer (for use with Microsoft Dynami
- vector容器