我尝试编写一个程序,其中 Dictionary 由 List 索引。(相信我,是的,有选项,但我喜欢按列表索引)。有一个最小的工作(实际上不工作,只有最后一行是一个问题)示例:
using System;
using System.Collections.Generic;
namespace test
{
class Program
{
static void Main(string[] args)
{
Dictionary<List<String>, int> h = new Dictionary<List<string>,int>();
List<String> w = new List<string> {"a"};
h.Add(w, 1);
w = new List<string>{"b"};
h.Add(w,2);
w = new List<string>{"a"};
int value = 0;
h.TryGetValue(w, out value);
Console.WriteLine(value+" "+h[w]);
}
}
如果调试这个程序,他会清楚地看到 h 中有两个元素,但仍然无法通过正确的索引访问这些元素 --- h[w]。我错了还是发生了什么奇怪的事情?