c# - LINQ - 遍历二维数组的行

标签 c# arrays linq

我有一个像这样的二维字符串数组:

string myarr[,] = new string[100,4];

我想获取第 2 列包含值 vpp 的行数。

即,在正常循环中我会这样做:

int s = 0;
for(int i=0; i<100; i++)
{
  if( myarr[i,1] == "vpp" )
  {
    s++;
  }
}

我们如何使用 LINQ 做到这一点?

我相信,这将遍历二维数组的所有元素,而不是逐行循环:

s = (from string myRow in myarr where myRow  == "vpp"                                       
          select myRow).Count();

我现在在移动设备上(旅游和阅读),因为我无法访问 Visual Studio,所以我只是输入了上面的代码。

谢谢

最佳答案

var count = Enumerable.Range(0, myarr.GetUpperBound(0)+1)
                      .Count(r => myarr[r,1] == "vpp");

关于c# - LINQ - 遍历二维数组的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28691454/

相关文章:

c# - 迫切需要在 C# 中使用 YQL 逐步进行基本的 oauth 签名?

c# - Label 的 visible 属性充当只读

javascript - 在javascript中获取具有相似id数组的所有元素

c# - Dapper ORM 的实用类类似于存储库模式

使用 C 中的二维数组将小写字母转换为大写字母

php - 如何在 PHP Laravel 中对子数组项进行分组和求和

c# - 我可以在加载 XDocument 时使用预定义的命名空间吗?

c# - 避免 DataTable 查询和构建中的重复

c# - LINQ:根据属性值从 XML 中删除元素?

c# - ASP.NET无法使用itext7下载PDF(但可以保存到磁盘)