String小練習2-將一個字串進行反轉
阿新 • • 發佈:2019-01-04
將一個字串進行反轉。
將字串中指定部分進行反轉(“abcdefg”;abfedcg)
思路:
- 1,曾經學習過對陣列的元素進行反轉。
- 2,將字串變成陣列,對陣列反轉。
- 3,將反轉後的陣列變成字串。
- 4,只要將或反轉的部分的開始和結束位置作為引數傳遞即可。
public class StringDemo03 {
public static void main(String[] args) {
String s = "123456789";
System.out.println(s);
System.out.println("new-->" +reverseString(s));//987654321
}
public static String reverseString(String s,int start,int end){
//字串變成陣列
char[] chs = s.toCharArray();
//反轉陣列
reverse(chs,start,end);
//將陣列變成字串
return new String(chs);
}
public static String reverseString(String s){
return reverseString(s,0, s.length());
}
private static void reverse(char[] chs, int x, int y) {
for(int start=x,end=y-1;start<end;start++,end--){
swap(chs,start,end);
}
}
private static void swap(char[] arr,int x,int y)
{
char temp = arr[x];
arr[x] = arr[y];
arr[y] = temp;
}
}