搜索数组不会返回任何结果

时间:2011-11-26 18:50:09

标签: c# visual-studio

我有以下代码来搜索数组:

for (int i = 0; i < this.passwordList.Length; i++)

       {

            string userInput = Convert.ToString(this.passInput);

            if(userInput == passwordList[i])
            {

                MessageBox.Show("FOUND");
                foundResult = 1;
                break;

            }
            //MessageBox.Show();


        }

并且数组具有以下结果:

public string[] passwordList = {"123456", "145784" , "asasas"};

我做错了什么!?!?

2 个答案:

答案 0 :(得分:4)

错误可能在这里:

string userInput = Convert.ToString(this.passInput);

如果你有一个WinForms控件,请尝试这样的事情:

string userInput = this.passInput.Text;

您可能还想检查调试器中userInput的值,以确保它包含您期望的值。

答案 1 :(得分:1)

您没有提供有关所有变量的信息,但我怀疑该行

string userInput = Convert.ToString(this.passInput);

是问题所在。如果this.passInput是一个控件,您将获得控件类型的名称,而不是用户输入控件的名称。

如果确实如此,您可以将代码简化为以下内容:

if (passwordList.Contains(this.passInput.Text)) {
  MessageBox.Show("FOUND");  
  foundResult = 1;  
}