gpt4 book ai didi

c# - AsOrdered() 不工作

转载 作者:行者123 更新时间:2023-11-30 23:16:04 25 4
gpt4 key购买 nike

我正在尝试将 AsParallell()AsOrdered() 方法一起使用,但我总是看到无序的结果。

using System;
using System.Linq;
using System.Collections.Generic;

namespace Parallel
{
class MainClass
{
public static void Main(string[] args)
{
List<String> cities = new List<String>() {
"Barcelona",
"Valencia",
"Sevilla",
"Zaragoza",
"Málaga",
"Murcia",
"Palma",
"Las Palmas de Gran Canaria",
"Alicante",
"Madrid",
"Córdoba",
"Valladolid",
"Tarrasa",
"Vigo",
"Gijón",
"Cartagena",
"Hospitalet de Llobregat",
"Vitoria",
"La Coruña",
"Granada",
"Elche",
"Oviedo",
"Badalona"
};

var filtered = cities.AsParallel().AsOrdered().Where(c => c.ToUpper().StartsWith("B") || c.ToUpper().EndsWith("A")).ToArray();

Console.WriteLine("Cities starting with \"B\" or ends with \"A\"");

foreach (String city in filtered)
{
Console.WriteLine(city);
}

}
}
}

输出是:

Cities starting with "B" or ends with "A"BarcelonaValenciaSevillaZaragozaMálagaMurciaPalmaLas Palmas de Gran CanariaCórdobaTarrasaCartagenaVitoriaLa CoruñaGranadaBadalonaPress any key to continue...

怎么了?

我在 Mac 中使用 Visual Studio,Net Core 项目。

谢谢

最佳答案

AsOrdered()只维护 List<string> 中项目的原始顺序.如果您想按字母顺序排列项目,您可以使用 OrderBy方法:

var filtered = cities.AsParallel().Where(c => c.ToUpper().StartsWith("B") || c.ToUpper().EndsWith("A")).OrderBy(x => x).ToArray();

关于c# - AsOrdered() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42191179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com