如何增加列表的索引以保存下一个列表索引中的下一个数字

时间:2014-02-23 20:52:09

标签: c#

我想保存zarb函数的结果,该函数在大小为1000的列表中重复1000次。然后我必须为每次计算增加列表的索引,以避免将下一个计算保存在与前一个索引相同。我怎么能这样做?

var results = new List<float>(1000);
for (int z = 0; z < 1000; z++)
{
   results.Add(zarb(sc,z));
   //increase the index of resukts
}
foreach (var resultwithindex in results.Select((r, index) => new { result = r, Index = index }).OrderByDescending(r => r.result).Take(20))
{
   MessageBox.Show(string.Format("{0}: {1}", resultwithindex.Index, resultwithindex.result));
}

Zarb功能

public float zarb(int userid, int itemid)
        {

            float[] u_f = a[userid];
            float[] i_f = b[itemid];

            for (int i = 0; i < u_f.Length; i++)
            {

                result += u_f[i] * i_f[i];

            }
            return result;

        }

2 个答案:

答案 0 :(得分:1)

不,不。 Add方法(令人惊讶地)将项目添加到列表中。它不会取代任何东西。对于List<T>,您应该read MSDN documentation。此外,不要害怕尝试并在询问之前看到结果 - 您将节省时间。

答案 1 :(得分:0)

也许我不明白这个问题,但你不需要索引列表。 add方法将处理它。