日期:2014-05-20 浏览次数:20897 次
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入要移位的字符串:");
String str = input.next();
System.out.println("请输入要移位的位数:");
int num = input.nextInt();
//判断输入时候合法
if(str.length() <= 0) {
System.out.println("请输入要移位的字符串!");
return;
}
if(num < 0) {
System.out.println("移动的位数不能小于0");
return;
}
System.out.println(shift(str,num));
}
/**
* 循环移动str,移动num位,移动的时候先取模(num % str.length()),然后再移位。
* @param str 要移位的字符串
* @param num 移动的位数
* @return 移位后的字符串
*/
private static String shift(String str, int num) {
StringBuffer sb = new StringBuffer();
sb.append(str.substring(num % str.length()));
sb.append(str.substring(0,num % str.length()));
return sb.toString();
}
}
------解决方案--------------------
简单的截取字符串。