gpt4 book ai didi

c# - SortedDictionary ContainsKey方法错误?

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

所以基本上我有这样的事情:

private SortedDictionary<Priority, List<String>> example = new SortedDictionary<Priority, List<String>>(new PriorityComparer());

public void Submit(Priority priority, String test)
{
if (!example.ContainsKey(priority))
{
example.Add(priority, new List<String> { test });
// adds an entry with the key (Priority.Low) twice, why?
}
else
{
example[priority].Add(test); // never called
}
}


仅提交一堆测试元素:

Submit(Priority.Critical, "test4");
Submit(Priority.Low, "test");
Submit(Priority.Normal, "test3");
Submit(Priority.Low, "test2");


优先级只是一个枚举,其优先级范围从低(0)到严重(10)。这只是一个典型的枚举,没有任何幻想。

优先级比较器:

public class PriorityComparer : IComparer<Priority>
{
public int Compare(Priority x, Priority y)
{
if (x > y)
{
return -1;
}
else
{
return 1;
}
}
}

最佳答案

您的比较实施不完整。当x == y(返回0)时,您会丢失这种情况。

关于c# - SortedDictionary ContainsKey方法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9783063/

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