题目描述
汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!
思路:就是字符串的读取,用到substring函数。
代码:
import java.util.*; /** * Created by ASUS on 2018/6/9 * * @Authod Grey Wolf */ public class Test1 { public static void main(String[] args) { Test1 test1=new Test1(); test1.sys(); } private void sys() { Scanner scanner=new Scanner(System.in); String str=scanner.nextLine(); int n=scanner.nextInt(); int len=str.length(); String result=null; result=str.substring(n,len); result+=str.substring(0,n); System.out.println(result); } }
效果:
abcXYZdef
3
XYZdefabc
我的座右铭:不会,我可以学;落后,我可以追赶;跌倒,我可以站起来;我一定行。