循环移位方法返回字符串类型



import java.util.Scanner;
public class shiftCycle {

 public static String shift(String s,boolean q,int i)
 {
  //i为移位个数,s为输入的字符串,q为控制左右移位方向
  String result;
  char[] ch = new char[s.length()];
  if(q==true){
  System.out.println("右移"+i+"位结果:");
   for(int p=0;p<s.length();p++){
    ch[p]=s.charAt((p+i-1)%s.length());
   }
   //System.out.println();
   result = String.valueOf(ch);
  }
  else{
   System.out.println("左移"+i+"位结果:");
   for(int p=0;p<s.length();p++){
    ch[p]=s.charAt((p+i)%s.length());
   }
   result = String.valueOf(ch);
  }
  return result;
 }
 public static void main(String[] args) {
  System.out.println("输入字符串:");
  Scanner scan = new Scanner(System.in);   //用到了scanner方法
  String s = scan.next();
  System.out.println("右移输入true,左移输入false");
  boolean q = scan.nextBoolean();
  System.out.println("请输入移位个数:"); 
  int i = scan.nextInt(); 
  String result = shift(s,q,i);
  System.out.print(result);
  //shiftCycle.shift(s, q, i);类调用static方法
  //new shiftCycle().shift(s, q, i);//对象调用static 方法
 }
}

输入字符串:
abcdef
右移输入true,左移输入false
true
请输入移位个数:
3
右移3位结果:
cdefab

输入字符串:
abcde
右移输入true,左移输入false
false
请输入移位个数:
3
左移3位结果:
deabc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值