好像没有吧,
这是我自己写的代码:
- /*
- * 思路:
- * 1、将字符串转换成字符数组
- * 2、将字符数组反转
- * 3、将反转的字符数组转换成字符串
- */
- public class StringTest {
- public static void main(String[] args){
- String s = "abcd1234";
- System.out.println("原字符串:"+s);
- String s1 = reverseString(s);
- System.out.println("反转后的字符串:"+s1);
- }
- //整个字符串反转
- public static String reverseString(String s){
- return reverseString(s,0,s.length());
- }
- //部分字符串反转
- //start:要反转字符串的首位置(包含)
- //end:要反转字符串的末位置(不包含)
- public static String reverseString(String s,int start,int end){
- //将字符串转换成字符数组
- char[] c = s.toCharArray();
- //调用反转数组方法,反转数组
- reverse(c,start,end);
- //将反转的字符数组转换成字符串,并返回
- return new String(c);
- }
- //反转数组
- public static void reverse(char[] c,int start,int end){
- for(int s=start,e=end-1;s<e;s++,e--){
- swap(c,s,e);
- }
- }
- //换位操作
- public static void swap(char[] c,int x,int y){
- char t = c[x];
- c[x] = c[y];
- c[y] = t;
- }
- }
复制代码
其实毕老师的Java基础视频里有讲到,你可以看一下
"黑马程序员_毕向东_Java基础视频教程第13天-07-String(字符串练习2)" |