Java实现字符串反转

替换原则:index k 的值和 n-k 的值进行交换。(始终记住程序员的n、k都是字符串的实际位置。)

乘除的最基本实现还是来源于移位操作。
 1     public String reverse(String src) {
 2         char[] value = src.toCharArray();
 3         int count = value.length;
 4         int n = count - 1;
 5         for (int j = (n - 1) >> 1; j >= 0; j--) {
 6             char tmp = value[j];
 7             char tmp2 = value[n - j];
 8             value[j] = tmp2;
 9             value[n - j] = tmp;
10         }
11         return new String(value);
12     }

 

Java字符串反转有2个已经实现的类函数: StringBuffer、StringBuilder类的函数reverse() 。
其中源码的实现如下,核心的思想是替换原则:
View Code

其中的hasSurrogate与字符编码有关系,这个东东暂时没有研究。

posted on 2014-03-16 16:03  BYRHuangQiang  阅读(250)  评论(0编辑  收藏  举报

导航