一个原字符串 babdle
替换规则数组集{ "bab", "ban", "and", "ang", "gle", "ger" }
要求如下:
根据替换规则的数组,
效果如下
bab -->ban
and -->ang
gle -->ger
结果原字符串变成了 banger
测试代码如下
public static void main(String[] args) {
String[] str = {"bab","ban","and","ang","gle","ger"};
String original = "babdle";
System.out.println(getReplaceResult(original,str,0));
}
public static String getReplaceResult(String original,String[] strs,int n){
if(n<strs.length-1){
String str = original.replace(strs[n], strs[n+1]);
return getReplaceResult(str,strs,n=n+2);
}else{
return original;
}
}
}
核心方法可以替换成一句代码
/**
* @param original 原字符串
* @param strs 替换字符串数组
* @param n 数组开始指针
* @return 替换后字符串
*/
public static String getReplaceResult(String original,String[] strs,int n){
return n<strs.length-1 ? getReplaceResult(original.replace(strs[n], strs[n + 1]), strs, n = n + 2): original ;
}