/**
* 将一个字符串按指定位置进行反转 如“abcdef”,从2——5反转 结果是:abfedc
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "abcdef";
System.out.println("源串:" + s);
System.out.println("反转后:" + reverseString(s, 2, 5));
}
private static String reverseString(String s, int i, int j) {
// TODO Auto-generated method stub
char[] ch = s.toCharArray();// 字符串变数组;
reverse(ch, i, j);// 反转数组;调用reverse()方法,5和4换位置,2和3换位置;
return new String(ch);// 将数组变成字符串;
/*我感觉这应该这样写,但是错的为什么?
char[] chs =reverse(ch, i, j);返回类型是数组,我们用数组接收
return new String(chs); 把返回的数组转成字符串*/
}
private static String reverse(char[] ch, int x, int y) {