我需要编写一个方法,用字符串生成器(使用递归)替换字符串启动器中的每个“ F”。这是我的镜头,但似乎无法正常工作:
public String nextGeneration(String initiator, String generator)
{
String result2 = "";
if (initiator=="F")
{
result2 = generator;
}
else
{
if (initiator.substring(0,0)=="F")
{
result2 = generator + nextGeneration(initiator.substring(1,initiator.length()), generator);
}
else if (initiator.substring(0,0)=="+")
{
result2 = "+" + nextGeneration(initiator.substring(1,initiator.length()), generator);
}
else if (initiator.substring(0,0)=="-")
{
result2 = "-" + nextGeneration(initiator.substring(1,initiator.length()), generator);
}
}
return result2;
}
有什么建议?
最佳答案
不要使用==
比较字符串,请使用string1.equals(string2)
。string1 == string2
测试两个引用是否引用内存中的同一对象,而不是它们的字符串内容值是否相等。