总结字典<string,likesdistribution =“”> </string,>的int

时间:2013-08-29 23:27:46

标签: c#

我有下一个数据:

对于每个帖子我都喜欢这个帖子。

例如:

post: "Hi"
"12345"
"11111"
"22222"
"33333"

post: "bye"
"16666"
"77777"
"12345"
"33333"

我定义了下一个变量:

Dictionary<string, LikesDistribution> IdsToLikesDistribution;

class

public class LikesDistribution {
    public int counter;
    public List<string> posts;
}

我想计算每个用户喜欢的总喜欢和帖子。

对于上面的例子:

"12345" 2 "Hi" "Bye"
"11111" 1 "Hi"
"22222" 1 "Hi"
"33333" 2 "Hi" "Bye"
"16666" 1 "Bye"
"77777" 1 "Bye"

如果我的字典是从Id到喜欢的数量:

Dictionary<string, int> IdsToLikesDistribution;

我可以这样做:

int value;
// if it doesn't exist
if (!IdsToLikesDistribution.TryGetValue(fanId, out value))
{
    IdsToLikesDistribution.Add(fanId, 1);
}
// it exists so increase it by 1
else
{
    IdsToLikesDistribution[fanId] = value + 1;
}

但现在我不知道该怎么做。

任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

您想知道的是如何设置/读取Class属性。

根据我对您的解释的理解,IdsToLikesDistribution[fanId]会返回班级LikesDistribution的实例。

如果是这种情况,您只需拨打IdsToLikesDistribution[fanId].counter即可获取counter值,并按照您将ID映射到喜欢的数量时的方式进行操作。

同样,IdsToLikesDistribution[fanId].posts会返回用户喜欢的帖子列表,您可以在列表中附加或删除新/旧帖子。

如果我能进一步澄清,请告诉我。