日期:2014-05-20  浏览次数:20648 次

高手帮帮忙~自己写个replace()方法呗~~~~
老师布置的一个作业~~ 有兴趣的做下
  自己写方法实现replace的功能~
  本来以为很简单 偶用String 截出前半部分和后半部分然后连接起来 ~但做起来真的很麻烦~
  ---没办法了 看看这边有没高手 帮帮忙~ 谢 啊 ~~

------解决方案--------------------
Java code
public class Test {

    public static void main(String[] args) {
        String str = "123aa123aaa123bbb123ccc123ddd123aa123";
        System.out.println(str);
        System.out.println(replace(str, "123", "***"));
    }
    
    public static String replace(String str, String old, String replacement) {
        StringBuffer sb = new StringBuffer();
        int index = str.indexOf(old);
        if(index < 0) {
            return str;
        }
        int start = 0;
        int len = old.length();
        do {
            sb.append(str.substring(start, index))
              .append(replacement);
            start = index + len;
            index = str.indexOf(old, start);
        } while (index >= 0);
        sb.append(str.substring(start));
        return sb.toString();
    }
}