java字符串反转

来源:互联网 发布:信息 互联网 大数据 编辑:程序博客网 时间:2024/06/05 05:42
package com.neusoft.Test;
import java.util.Stack;
public class converStr {
 //第一种
 public static String reverse1(String s){
  int length=s.length();
  if (length<=1)
   return s;
   String left=s.substring(0, length/2);
   String right=s.substring(length/2, length);
   return reverse1(right)+reverse1(left);
 }
 //第二种
 public static String reverse2(String s){
  int length=s.length();
  String reverse="";
  for (int i = 0; i <length; i++)
   reverse=s.charAt(i)+reverse;
  return reverse;
  
 }
 //第三种
 public static String reverse3(String s){
  char[]array=s.toCharArray();
  String reverse="";
  for (int i = array.length-1; i>=0; i--)
  reverse+=array[i];
  return reverse;
 
 }
 //第四种
 public static String reverse4(String s){
  return new StringBuffer(s).reverse().toString();
 }
 //第五种
 public static String reverse5(String orig){
  char[]s=orig.toCharArray();
  int n=s.length-1;
  int halfLength=n/2;
  for (int i = 0; i <=halfLength; i++) {
   char temp=s[i];
   s[i]=s[n-i];
   s[n-i]=temp;
  
  }
  return new String(s);
 }
 //第六种
 public static String reverse6(String s){
  char[]str=s.toCharArray();
  int begin=0;
  int end=s.length()-1;
  while (begin<end) {
   str[begin]=(char)(str[begin]^str[end]);
   str[end]=(char)(str[begin]^str[end]);
   str[begin]=(char)(str[end]^str[begin]);
   begin++;
   end--; 
  }
  return new String(str);
 
 }
 //第七种
 public static String reverse7(String s){
  char[]str=s.toCharArray();
  Stack<Character>strack=new Stack<Character>();
  for (int i = 0; i < str.length; i++)
   strack.push(str[i]);
   String reversed="";
  for (int i = 0; i < str.length; i++)
   reversed+=strack.pop();
  return reversed;
  
 }
 
}
0 0
原创粉丝点击