字符串反转
字符串反转中较为经典的一个案例就是,要求将给定字符串反序输出,但是要求单词本身的字符顺序不变。例如输入:the sky is blue要求输出:blue is sky the。
/**
* 题目描述:
* 给定一段英文字符串,要求逆序输出,例如输入:the sky is blue要求输出:blue is sky the
*/
public class Sring_Tests {
public static void main(String[] args){
String str="the sky is blue";
System.out.print(swapWords(str));
}
private static Object swapWords(String str) {
char[] charArray=str.toCharArray();
swap(charArray,0,charArray.length-1);
int begin=0;
for (int i=1;i<charArray.length;i++){
if(charArray[i]==' '){
swap(charArray,begin,i-1);
begin=i+1;
}
}
swap(charArray,begin,charArray.length-1);
return new String(charArray);
}
private static void swap(char[] charArray, int front, int end) {
while (end>front){
char temp=charArray[end];
charArray[end]=charArray[front];
charArray[front]=temp;
front++;
end--;
}
}
}