gpt4 book ai didi

c# - 无法更改字典键的值

转载 作者:太空宇宙 更新时间:2023-11-03 17:31:40 25 4
gpt4 key购买 nike

我想计算文本文件中重复字符的数量。

我写了这段代码

foreach(char c in File.ReadAllText(path))
{
if(dic.ContainsKey(c))
{
int i=dic[c];
dic[c]=i++;
}
else
{
dic.Add(c,1);
}
}


它添加了所有唯一的单词,但是即使有重复的字符,也将所有键的值显示为 1

最佳答案

我想你要:

dic[c] = i + 1;


或许也可以,尽管恕我直言,这只会增加复杂性,因为您在之后不使用 i

dic[c] = ++i;




说明:

i++是后递增操作。这意味着它将 i的当前值分配给 dic[c],然后递增 i。因此,总而言之,您始终在阅读 i=1,将 i=1重新放入字典中,然后将 i递增到 2,然后再将其发送到void。



附录:

您实际上根本不需要遍历一个临时变量。您可以简单地通过 dic[c] += 1;读取并分配该值,甚至可以通过 dic[c]++;递增该值。

关于c# - 无法更改字典键的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19640728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com