将计算中的数据插入按值排序的列表中

本文关键字:排序 列表 数据 计算 插入 | 更新日期: 2023-09-27 18:21:33

我正在根据数据库中的数据进行一些c#.net计算,该计算会产生几个字符串字段和一个带有数字的int字段(starLength)。

最终,我希望看到按这个int字段(starLength)排序的前100条记录的结果。

我想做的是:在进行计算时,我想开始将这些数据插入某些数据类型,如果下一条记录符合starLength的范围,并且在100条记录内,那么我想添加该记录。

我尝试的是:我创建了一个类型为Stars的类,它有各种字符串字段和int字段。当我遍历计算得出的数据时,我会将一条恒星记录添加到列表中,然后对它们进行排序。然而,这会将每个结果插入到列表中,该列表是百万条以上的记录。我只关心按starLength排序的前100张唱片。

关于如何执行计算的任何建议,请检查是否在前100个starLength字段内,然后插入记录。

编辑:添加一些代码来显示我有什么和问题

    public class Stars
    {
         string a;
         string b;
         string c;
         int starLength;
         public Stars (_a,_b,_c,_sLength)
         {
            a=_a;
            b=_b;
            c=_c;
            starLength=_sLength
         }
    }
//main
    List<Stars> myStars = new List<Stars>();
   //doing math here and adding records
   myStars.Add(a,b,c,sl);

^基本上就是我所拥有的。但是当我填写myStars列表时,我想确保starLength在前100个starLength的内

将计算中的数据插入按值排序的列表中

我不知道你是如何从数据库中获取这些数据的,但如果你愿意,我假设你可以将其作为列表获取。不管怎样,LINQ似乎是最好的选择。

var results = yourListFromDataBase.Where(s => s.yourIntValue == <your criteria>).Take(100);

如果你想稍微组织一下,你甚至可以在那里添加OrderBy。

你也提到过做一些计算,所以我不完全相信这对你来说是可行的。