根据另一个列表的值创建列表c#

时间:2015-02-23 18:23:46

标签: c# list

我正在尝试创建一个与我已经创建的现有列表相对应的字符串列表。我目前的功能如下:

public List<string> HeatGet(int HeatNumbers, List<string> List)
    {
        string HeatString;
        List<string> HeatStringList = new List<string>();
        int ListLength = List.Count;
        int HeatAssignValue = ListLength / HeatNumbers;

        for (int i = 0; i < ListLength; i++)
        {
            HeatString = "T" + i;

        }


        return HeatStringList;


    }

我希望根据HeatNumbers将列表拆分成段,然后每个列表将包含一个基于该值的值,例如,如果我的列表有10个条目而HeatNumbers是2,那么新的前5个值list应该有T1,最后5个值应该有T2。但是,HeatNumbers是用户定义的,可能会发生变化。

编辑: 如果HeatNumbers = 2

List1 = {John,Alex,Harry,James,George,Joanne} List2 = {T1,T1,T1,T2,T2,T2}

1 个答案:

答案 0 :(得分:1)

只需要一个算法来计算细分:

public List<string> HeatGet(int heatNumbers, List<string> list)
    {
        List<string> heatStringList = new List<string>();
        for (int i = 0; i < list.Count; i++)
        {
            heatStringList.Add("T" + Math.Ceiling((i + 1) *  (float)heatNumbers / list.Count));
        }
        return heatStringList;
    }