我有两种方法,generateNounPhrase()和generateVerbPhrase()。主谓短语将呼吁NounPhrase一半的时间,它的输出输出应该到的效果:C#方法不返回一个唯一的值,当它应该是
空地重新动画这个金字塔
(粗体,表示其中generateNounPhrase ()在逻辑上被调用)。然而,真正的输出是形式:
空地重新动画空地
起初我还以为我的randomIndex方法是行不通的,因为我本来打算,但如果我再次运行这两种方法,我会得到不同的名词短语,但它们在句子的开头和结尾都不是唯一的,因为它们应该是。
任何想法我做错了,以获得一种方法来显示相同的结果?
private string generateNounPhrase()
{
string nounPhraseString = "";
nounPhraseString = nounMarkersStringList[randomIndex(0,nounMarkersStringList.Count-1)];
if (included(1, 4, 2) == true)
{
nounPhraseString += " " + adjectivesStringList[randomIndex(0, adjectivesStringList.Count - 1)];
}
nounPhraseString += " " + nounsStringList[randomIndex(0, nounsStringList.Count - 1)];
return nounPhraseString;
}
private string generateVerbPhrase()
{
string verbPhraseString = "";
if (included(1, 4, 2) == true)
{
verbPhraseString = intransitiveVerbsStringList[randomIndex(0, intransitiveVerbsStringList.Count - 1)];
}
else
{
verbPhraseString = transitiveVerbsStringList[randomIndex(0, transitiveVerbsStringList.Count - 1)] + " " + generateNounPhrase();
}
return verbPhraseString;
}
你是对的我正在创建一个新的实例,所有这一切发生在点击一个按钮后,因此它将非常接近(在毫秒之内)。当我回到工作中时,我会按照您的建议来看看,并且可以再次查看代码。 – Windos 2011-03-07 00:03:04
工作过。非常感谢! – Windos 2011-03-07 01:00:58