计算存储在元组列表中的整数值C#

时间:2013-10-24 18:53:25

标签: c# linq list tuples

我有一个我写的函数,它接受一个字典输入。它会添加字典中所有整数的总值,并将其作为整数返回:

    public int Total(Dictionary<string, int>)
    { 
        int result = letters.Values.Sum(x => x.Value);
        return result;
    }

我怎么能重写这个,所以它接受了一个元组列表的输入呢?

    public int Total(List<Tuple<string, int>>)
    { 
        int result = ?
        return result;
    }

2 个答案:

答案 0 :(得分:1)

与使用字典

相同
int result = letters.Sum(x => x.Item2);

答案 1 :(得分:1)

public int Total(List<Tuple<string, int>> values)
{ 
    return values.Sum(t => t.Item2);
}

正如评论指出的那样,你可以通过将参数类型更改为IEnumerable<Tuple<string, int>>来更加通用,或者更一般地说,你可以抽象出第一个元素类型:

public int Total<T>(IEnumerable<Tuple<T, int>> values)
{ 
    return values.Sum(t => t.Item2);
}