我想检查 Arguments 是否包含来自 ParameterSwitches 的字符串。如果是这种情况,则应将其从 Arguments 中删除。
问题是,即使 pSwitch 与 Arguments[i] 具有相同的值,条件也不成立并且 Arguments[i] = null; 不会被执行。
我已经用调试器一步一步地尝试过了,只是变得更加困惑,因为它证实了我的假设。
string[] Arguments = new string[]{/*some strings*/};
string[] ParameterSwitches = new string[]{/*some strings*/};
for (int i = 0; i < Arguments.Length; i++)
{
foreach (string pSwitch in ParameterSwitches)
{
if (pSwitch == Arguments[i])
{
Arguments[i] = null;
}
}
}
谁能想象这种情况会发生的方式?
提前致谢
更新: 哦,女孩们,伙计们……下次我在这里问问题之前戴上我的眼镜。其中一根弦后有一小块空白。这就是问题所在。修剪起到了作用。
if (String.Equals(pSwitch.Trim().ToUpper(), Arguments[i].Trim().ToUpper()))
{
Arguments[i] = null;
}
“问题解决了