我刚刚看到这种行为,我对此感到有些惊讶......
如果我向Dictionary添加3或4个元素,然后执行"For Each"以获取所有键,它们将按照我添加它们的相同顺序显示.
这让我感到惊讶的原因是一个字典在内部应该是一个HashTable,所以我期望事情以任何顺序出现(按键的哈希排序,对吧?)
我在这里错过了什么?这是我可以依靠的行为吗?
编辑:好的,我已经想到了为什么会发生这种情况的许多原因(比如条目的单独列表,这是巧合等).我的问题是,有谁知道这是如何工作的?
我很确定一个枚举不是我想要的.我想要的是一个命名项目列表
CustomerLookup = "005",
CustomerUpdate = "1010"
Run Code Online (Sandbox Code Playgroud)
"005"和"1010"不是我的值,它们是我需要发送给我无法控制的第三方的值.其中有近500个.我只是希望我的代码看起来不错.
代替
SendRequest("005");
Run Code Online (Sandbox Code Playgroud)
我宁愿看
SendRequest(RequestType.CustomerLookup);
Run Code Online (Sandbox Code Playgroud)
任何人都有任何自我记录的想法,而不会在代码中疯狂吗?
假设我有一个字符串数组,如:
myArray["hello", "my", "name", "is", "marco"]
Run Code Online (Sandbox Code Playgroud)
要访问此变量,我必须将整数作为索引.所以,如果我想要提取第三个元素,我就是这么做的:
myArray[2]
Run Code Online (Sandbox Code Playgroud)
现在,我想使用label而不是integer.所以有些例如:
myArray["canada"]="hello";
myArray["america"]="my";
myArray["brazil"]="name";
myArray["gosaldo"]="is";
myArray["italy"]="marco";
Run Code Online (Sandbox Code Playgroud)
我怎样才能在C#上做到这一点?可能吗?谢谢