java实现字符串指定的部分进行反转

  本博文采用java实现:对字符串中指定的部分进行旋转,如str="mmabcdfeffnn",指定abcdfeff部分进行旋转,则得到字符串str="mmffefdcbann"。

  其实现的思路,我是这样的:将源字符串分为三部分,头,待旋转,尾,其中这三部分都需要进行采取截取的操作,而对于待旋转的部分,这里采用了一个技巧,那就是借用了StringBuffer(String string)作为中介,并调用其中的reverse()方法进行旋转。最后得到的三部分:头,已旋转,尾,进行连接concat(String string)操作即可。

  代码如下:

 

/**
 * 字符串指定的部分进行反转
 * @author zhonglinsen
 * 2016-3-1 下午
 */
public class StringReverse {
	public static void main(String[] args) {
		String str="mmabcdefnn";
		int start=2;
		int end=7;
		
		System.out.println("原先字符串:          "+str);
		String strNew=strReverse(str, start, end);
		System.out.println("旋转了指定位置后的字符串: "+strNew);
	}
	
	public static String strReverse(String strArg,int start,int end){
		
		String strStart=strArg.substring(0,start);
		
		String strEnd=strArg.substring(end+1,strArg.length());

		String strSub=strArg.substring(start, end+1);

		StringBuffer sb=new StringBuffer(strSub);
		strSub=sb.reverse().toString();
		
		return strStart.concat(strSub).concat(strEnd);
	}
}

 

posted @ 2016-03-01 16:34  稳杰  阅读(1398)  评论(0编辑  收藏  举报