首页 > 解决方案 > 如何将数组中的元素与在c#中按顺序输入到文本框中的元素进行比较?

问题描述

我的目标是真正做一个猜谜游戏,所以我用 Mysql 数据创建了两个数组,称为答案和问题。我想要做的是从用户那里获取值,如果它是真的,例如我的第一个答案“时尚”匹配用户在文本框中输入的猜测,我希望标签写正确并继续下一个答案并尝试找到下一个答案


当我将数组中的值输入文本框时,我的代码返回 true,但我希望它们按顺序排列。你认为我可以如何使用 for 循环。你认为我可以如何使用 for 循环进行有序比较?

          for (int i=0;i<cevaplar.Count;i++)
        {
            string tahmin = textBox1.Text;
            if(cevaplar.Contains(tahmin))
            {
                label1.Text = "true";
                continue;
                
                
            }
            else
            {
                label1.Text = "false";
                break;

            }
        }
  

    }

标签: c#

解决方案


在您的代码中,您使用"cevaplar.Contains(tahmin)". 随着contains您检查是否tahim可以在阵列中的任何位置找到,而不考虑任何顺序。

您的问题的解决方案应该很简单。只是不要contains在这种情况下使用,而是使用简单的索引器来比较元素。尝试以下操作:

代替:

if(cevaplar.Contains(tahmin))
            {
                ...
            }

if(cevaplar[i] == tahim) //here you check only if the i'th element is matching.
            {
                ...
            }

祝你好运!


推荐阅读