C# 比较两个列表是否具有相同的项目顺序(字母顺序)
C# Comparing if two lists have the same order of items (alphabetical)
我在比较两个列表时遇到了一个大问题。我刚刚复制了我的第一个列表,并尝试对其进行排序。问题是,我想比较我的原始列表和排序的列表,看看它们是否具有相同的字母顺序。我希望我为我的问题提供了足够的信息。
提前致谢
public void VerifyDataPrijave(string username)
{
List<string> listaTekstova = new List<string>(); //initializing new, empty List
var kartice = Repo.Kartice.CreateAdapter<Unknown>(false).Find(".//div[class='_63fz removableItem _95l5']");
foreach (var kartica in kartice) {
var slika = kartica.Find(".//tag[tagname='img']")[0];
var ime = slika.Find("following-sibling::div")[0];
string text = ime.GetAttributeValue("InnerText").ToString(); //loop through profile cards and getting Names as InnerText in variable text
listaTekstova.Add(text); //adding those "texts" I just found to an empty list initialized before
List<string> novaListaTekstova = new List<string>(listaTekstova); //clone (copy) of the very first one list
novaListaTekstova.Sort(); //sorting that list alphabetically (I suppose, not sure)
}
}
您可以使用 SequenceEqual 来比较两个 Enumerable。在您的情况下,您可以在完成所有排序后执行类似的操作:
var isEqual = novaListaTekstova.SequenceEqual(listaTekstova);
我在比较两个列表时遇到了一个大问题。我刚刚复制了我的第一个列表,并尝试对其进行排序。问题是,我想比较我的原始列表和排序的列表,看看它们是否具有相同的字母顺序。我希望我为我的问题提供了足够的信息。
提前致谢
public void VerifyDataPrijave(string username)
{
List<string> listaTekstova = new List<string>(); //initializing new, empty List
var kartice = Repo.Kartice.CreateAdapter<Unknown>(false).Find(".//div[class='_63fz removableItem _95l5']");
foreach (var kartica in kartice) {
var slika = kartica.Find(".//tag[tagname='img']")[0];
var ime = slika.Find("following-sibling::div")[0];
string text = ime.GetAttributeValue("InnerText").ToString(); //loop through profile cards and getting Names as InnerText in variable text
listaTekstova.Add(text); //adding those "texts" I just found to an empty list initialized before
List<string> novaListaTekstova = new List<string>(listaTekstova); //clone (copy) of the very first one list
novaListaTekstova.Sort(); //sorting that list alphabetically (I suppose, not sure)
}
}
您可以使用 SequenceEqual 来比较两个 Enumerable。在您的情况下,您可以在完成所有排序后执行类似的操作:
var isEqual = novaListaTekstova.SequenceEqual(listaTekstova);