-1

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

    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;
    }
4

2 回答 2

1

和你对字典做的一样

int result = letters.Sum(x => x.Item2);
于 2013-10-24T18:55:52.303 回答
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);
}
于 2013-10-24T18:56:41.933 回答