C# 查找二维字符串数组的唯一行输出
我有以下字符串C# 查找二维字符串数组的唯一行输出,c#,.net,arrays,sorting,C#,.net,Arrays,Sorting,我有以下字符串 string[,] test= { {"0","0"}, {"0","0"}, {"0","0"}, {"0","1"}, {"5","0"}, }; 我想找到一种方法来搜索数组中所有唯一的行。 所以我想要的输出数组是 string[,] output= { {"0","0"}, {"0","1"}, {"5","0"}, }; 有人对如何实现这一点有什么简单的想法吗?您可以使用linq执行此操作,只需调用Distinct来选择唯一的值,如下所
string[,] test=
{
{"0","0"},
{"0","0"},
{"0","0"},
{"0","1"},
{"5","0"},
};
我想找到一种方法来搜索数组中所有唯一的行。
所以我想要的输出数组是
string[,] output=
{
{"0","0"},
{"0","1"},
{"5","0"},
};
有人对如何实现这一点有什么简单的想法吗?您可以使用linq执行此操作,只需调用
Distinct
来选择唯一的值,如下所示
var query = (from arr in test
from value in arr
select value).Distinct();
或者您可以尝试以下方法,这只是将嵌套数组展平为一个序列,并调用Distinct来查找Distinct元素。来源
这适用于一维数组,而不是二维数组。错误19找不到源类型“string[,]”的查询模式的实现未找到SelectMany。
var distinct = test.SelectMany(a => a).Distinct().ToArray();