替换字符串中的字符,不使用字符串 replace() 方法

use*_*910 0 java swing

我有一个 String ,String originalString= "This car is my car";
我想用“bike”替换“car”,而不使用 stringreplace()方法。

class StringTest{
   public static void main(String[] args){
      String originalString = "This car is my car";
      String replacedString = replaceMethod(original, "car", "bike");
      System.out.println(replacedString);
   }  
}
static String replaceMethod( String original, String toReplace, String replacedWith){
    // enter code here
    return "";
}
Run Code Online (Sandbox Code Playgroud)

Ahm*_*mdy 5

您可以拆分“汽车”,然后连接添加“自行车”

import java.util.*;

class StringTest 
{
    public static void main(String[] args)
    {
        String originalString = "This car is my car";
        String replacedString = replaceMethod(originalString, "car", "bike");
        System.out.println(replacedString);
    }

    static String replaceMethod(String str, String from, String to) 
    {
        String[] arr = str.split(from);
        StringBuilder output = new StringBuilder();

        int i = 0;
        for (; i < arr.length - 1; i++)
        output.append(arr[i]).append(to);

        output.append(arr[i]);
        if (str.substring(str.lastIndexOf(" ")).equalsIgnoreCase(" " + from))
            output.append(to);

        return output.toString();
    }
}
Run Code Online (Sandbox Code Playgroud)

原始字符串

This car is my car
Run Code Online (Sandbox Code Playgroud)

输出

This bike is my bike
Run Code Online (Sandbox Code Playgroud)

感谢 Polywhirl 先生的帮助。