C#多维数组解析
本文关键字:数组 | 更新日期: 2023-09-27 18:24:55
我有一个多维数组。
调试器中的内容如下所示。
阵列设置为
String[,] s = new String[6,4]
A B Yes C
A B Yes C
A B No C
A B Yes C
A B Yes C
A B Yes C
A B No C
A B Yes C
我基本上需要知道哪一行说"不",但我在解析数组时遇到了困难。如有任何帮助,我们将不胜感激。
是吗?
[TestMethod]
public void test()
{
var text = new String[6, 4]
{
{"A", "B", "C", "Yes"},
{"A", "B", "C", "Yes"},
{"A", "B", "C", "Yes"},
{"A", "B", "C", "Yes"},
{"A", "B", "Not", "C"},
{"A", "B", "C", "Yes"}
};
var rowWithNot = new List<int>();
for (int row = 0; row < 6; row++)
for (int col = 0; col < 4; col++)
if (text[row, col].Contains("Not"))
{
rowWithNot.Add(row);
break;
}
foreach (var row in rowWithNot)
{
for (int col = 0; col < 4; col++)
{
Console.WriteLine(text[row, col]);
}
}
}
var rowIndices = Enumerable.Range(0, s.GetLength(0)).Where(i => s[i, 2] == "No");
您可以使用以下方法来完成:
IEnumurable<int> GetRowNumbersThatSayNo(string[,] values)
{
for(int i=0;i<values.Length;i++)
if(values[i,2]=="No") yield return i;
}