public string GetUpgradesPurchasedVal()
{
string upgradesPurchasedVals = "";
for (int i = 0; i < upgradesPurchased.Count; i++) {
if (i == upgradesPurchased.Count) {
upgradesPurchasedVals += upgradesPurchased [upgradeNames[i]].ToString () + "$";
} else {
upgradesPurchasedVals += upgradesPurchased [upgradeNames[i]].ToString () + "|";
}
}
return upgradesPurchasedVals;
}
Run Code Online (Sandbox Code Playgroud)
所以在这里我循环遍历Dictionary<string,bool> upgradesPurchased并且我试图确保for循环是否在行标记的最后一次迭代,if(i == upgradesPurchased.Count)在这种情况下我期望发生的是if i等于字典中的项目数然后字符串将收到"$"而不是"|" 但是看起来这条线完全被忽略了
简介:我需要测试for循环是否在最后一次迭代中,如果是,那么"$"应该添加到字符串中,如果不是"|" 应该添加到字符串中
循环条件很i < upgradesPurchased.Count明显,条件if (i == upgradesPurchased.Count)永远不会成立.
由于迭代是从零开始的,因此最后一次迭代将具有i == upgradesPurchased.Count - 1.
| 归档时间: |
|
| 查看次数: |
322 次 |
| 最近记录: |