【问题标题】:How to find the position of an item in an array in c#如何在C#中找到一个元素在数组中的位置
【发布时间】:2016-08-08 23:44:45
【问题描述】:

我有一个数据数组,我知道它只包含我正在搜索的一个值,但我想知道该值在数组中的哪个位置保存,以便我可以在另一个数组中找到相应的数据。

类似的东西

int[] data = new int[] { 2, 7, 4, 9, 1 };
int search = 4;
int result;

for (int i = 0; i < data.Length; i++)
{
    if (data[i] == search)
    {
        result = data[i].Position;
    } 
}

这当然看起来很容易完成,但我似乎无法找到方法。

非常感谢任何帮助。

【问题讨论】:

标签: c# arrays search


【解决方案1】:

做事

result = i;

i 是数组中的位置。

【讨论】:

    【解决方案2】:

    您可能希望在执行此操作时优化您的代码:

    int[] data = new int[] { 2, 7, 4, 9, 1 };
    int search = 4;
    int result;
    
    for (int i = 0; i < data.Length; i++)
    {
       if (data[i] == search)
       {
           result = i;
           break; //This will exit the loop after the first match
                  //If you do not do this, you will find the last match
       } 
    }
    

    【讨论】:

      【解决方案3】:

      简单的方法是使用Array.IndexOf 方法:

      int[] data = new int[] { 2, 7, 4, 9, 1 };
      int search = 4;
      int index = Array.IndexOf(data, search);
      

      【讨论】:

        猜你喜欢
        • 2020-07-22
        • 2020-05-23
        • 1970-01-01
        • 2022-06-19
        • 1970-01-01
        • 2015-01-30
        • 2021-09-24
        • 1970-01-01
        • 2020-02-02
        相关资源
        最近更新 更多