我喜欢在循环遍历值列表或字段时执行不同的值。
Dictionary<string, int> _ddistinctValues = new Dictionary<string, int>();
foreach(string _word in _words) {
if(!_ddistinctValues.ContainsKey(_word)) {
_ddistinctValues.Add(_word, 1);
}
}
有没有更好的方法可以在不保存“1”整数值的情况下节省空间?我正在使用哈希表来更快地获得不同的值。也许哈希没有值的wordname,只是不同的键? C#中有一个类可以做到吗?
这不是一个大问题。只是想知道。
感谢。
答案 0 :(得分:5)
只需使用LINQ并在列表中调用Distinct()
即可。您可能希望将结果放入另一个列表中。
var distinctWords = _words.Distinct().ToList();
这将在内部使用HashSet<T>
来确定您将感兴趣的集合的唯一性。
答案 1 :(得分:1)
是的,HashSet是适合你的课程。
答案 2 :(得分:1)
您正在寻找HashSet<string>
。