java基础-字符串反转
思想:
1,将字符串变成数组
2、将数组反转
3、将数组变成字符串
import java.lang.String;
public class StringInverse
{
public static void main(String[] args)
{
String s=" ab cd ";
sop("("+s+")");
sop("("+reverseString(s)+")");
sop("("+reverseString(s,3,7)+")");
}
private static void sop(String s)
{
System.out.println(s);
}
private static String reverseString(String s)
{
return reverseString(s,0,s.length());
}
private static String reverseString(String s,int start,int end)
{
//将字符串变成数组
char[]arr=s.toCharArray();
//将数组反转
reverse(arr,start,end);
//将数组变成字符串
return new String(arr);
}
private static void reverse(char[]arr,int x,int y)
{
for(int start=x,end=y-1;start<end;start++,end--)
{
swap(arr,start,end);
}
}
private static void swap(char[]arr,int x,int y)
{
char temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}