总结 int 的字典<字符串,喜欢分布>



我有下一个数据:

对于每个帖子,我都有喜欢该帖子的id-s。

例如:

post: "Hi"
"12345"
"11111"
"22222"
"33333"
post: "bye"
"16666"
"77777"
"12345"
"33333"

etc

我定义了下一个变量:

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

但现在我不知道怎么做。

感谢您的帮助!

您想要了解的似乎是如何设置/读取class属性。

根据我对您的解释,IdsToLikesDistribution[fanId]返回类LikesDistribution的一个实例。

如果是这种情况,您只需调用IdsToLikesDistribution[fanId].counter即可获得counter值,并按照将Id映射到点赞数的方式进行处理。

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

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

最新更新