黑马程序员技术交流社区

标题: 关于字符串反转 [打印本页]

作者: 歌诗王道    时间: 2014-4-6 18:12
标题: 关于字符串反转
  1. class Stringdemo1
  2. {
  3.     public static void main(String[] args)
  4.     {
  5.         String s = "abcde";
  6.         System.out.println(reverseString(s));
  7.     }
  8.     public static String reverseString(String s)
  9.     {
  10.         char[] chs = s.toCharArray();     //字符串变成数组
  11.         reverse(chs);     //反转数组
  12.         return new String(chs);     //将数组转成字符串
  13.     }
  14.     public static void reverse(char[] arr)
  15.     {
  16.         for(int start=0,end=arr.length-1;start<end;start++,end--)
  17.         {
  18.         swap(arr,start,end);
  19.         }
  20.     }
  21.     public static void swap(char[] arr,int x,int y)
  22.     {
  23.        char temp = arr[x];
  24.        arr[x] = arr[y];
  25.        arr[y] = temp;
  26.     }
  27. }
复制代码
这是关于毕老师反转字符串视频中的一段代码,我有个疑问,字符串本身也可以获取长度,也有自己的下标,为什么在还要先转换成数组再进行操作?

作者: yujiangjiao    时间: 2014-4-6 19:00
String 是一个特殊的类,String s = "abcde";定义的是一个字符的序列,字符串的长度是指字符串中通过编码表编码后字符的 数量




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2