给定一个字符串,将其“旋转”,例如:
ABCDEF123456 (旋转3次)---> DEF123456ABC
ABCDEFG123456 (旋转4次)---> EFG123456ABCD
这里只实现函数:
//字符串旋转---两个参数为:源字符串,偏移量
//例:ABCD1234 (偏移量为3) -> D123ABC
public static String LeftRotateString(String str,int n) {
//1.先将该字符串复制一份相同的加在源字符串后面
String string = str+str;
//2.将此字符串变为字符数组操作
char[] array = string.toCharArray();
//3.创建目标字符串
int len = str.length();
char[] array1 = new char[len];
//4.对目标字符串进行赋值操作
//长字符串从偏移位置开始向后推移,目标字符串从头开始推移;
for(int j=0,i=n;j<len;j++,i++){
array1[j] = array[i];
}
String result = new String(array1);
return result;
}