重载了一个方法:

 public class RepeatDictionaryComparer : IEqualityComparer<string>
{
public bool Equals(string x, string y)
{
return x != y;
}
public int GetHashCode(string obj)
{
return obj.GetHashCode();
}
}

  调用:

Dictionary<string, string> _dic = new Dictionary<string, string>(new RepeatDictionaryComparer());

  这样重复的键也可以添加了。

java中Map集合类:

Map集合类                              Key                       Value                 Super          说明

HashTable                         不允许为null            不允许为null      Dictionary    线程安全

concurrentHashMap         不允许为null            不允许为null       AbstractMap   锁分段技术和CAS

TreeMap                            不允许为null            允许为null         AbstractMap    线程不安全

HashMap                          允许为null               允许为null          AbstractMap   线程不安全,resize死链问题

C#Dictionary不能添加重复键的解决方法的更多相关文章

  1. vi命令【方向键】变字母键的解决方法

    vi命令[方向键]变字母键的解决方法   最近在SSH下玩Debian发现了一个有趣的现象,就是在一些个别版本的Debian镜像下,使用vi命令时会出现键盘输出出错的现象,使用方向键时会变成C,D等字 ...

  2. Entity framework 7通过代码添加外键关系的方法

    这几天研究Asp.net5,也试着写了一些示例代码,因为网上的资料实在是太少了,所以在此把一些问题的解决方法记录下来,以备后查. 问题: 在EF7中,假如数据库已经存在,并且两个表具有外键关系,但是实 ...

  3. 页面按F5重复提交数据解决方法

    在Web开发中,必须面对的问题就是表单的重复提交问题(这里仅指F5刷新造成的重复提交),.NET中处理这个问题似乎没有什么好的方法. 在网上搜索得到的解决方法主要有两种,一种是直接让表单按钮失效,从而 ...

  4. Ubuntu 14.04 关机键无效解决方法

         这几天開始研究ubuntu 14.04软件,安装Cairo-Dock后发现右上角的关机.重新启动.注销菜单点击都没了反应仅仅能通过命令实现,后来经过研究,发现仅仅要设置了 Cairo-Doc ...

  5. log4j重复打印的解决方法

    log4j的logger(旧版本称logger)是层次结构的,子logger会继承父logger的属性,appender也是可继承的属性,这常常 容易导致配置错误而引起的log4j输出重复的log信息 ...

  6. C# 添加.DLL 出错的解决方法

    解决方法:    1.     注册组件:       运行--cmd--regsvr32 dll的绝对路径名(例如: regsvr32  C:\bin\EFGateWayOfERP.dll) 如果注 ...

  7. springmvc 用注解方式添加事务不生效解决方法

    springmvc 事务注册有很多种方法,在此我只mark 用注解方式添加transaction不生效的解决办法. springmvc 注解方法添加事务步骤: 1.在 spring的 root-con ...

  8. svn不能添加.a文件的解决方法

    上次说用svn add命令添加.a文件,下面是另外的一种解决办法: 修改~/.subversion/config文件,增加一条 # global-ignores = *.o *.lo *.la *.a ...

  9. fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "StdAfx.h"”? 解决方法

    错误描述: fatal error C1010: 在查找预编译头时遇到意外的文件结尾.是否忘记了向源中添加“#include "StdAfx.h"”? 错误分析:     此错误发 ...

随机推荐

  1. Java解决java.io.FileNotFoundException: E:\work\work (拒绝访问。)

    一.问题 在使用FileInputStream或FileOutputStream时会遇到如下问题1和问题2. 问题1: java.io.FileNotFoundException: .\xxx\xxx ...

  2. 微信小程序之上传图片(含前后端代码例子)

    此代码示例,能够让你成功将图片上传至后端,后端做相应的处理,然后返回成功码. 前端小程序代码 index.wxml: <view class='content'> <view cla ...

  3. js操作表格、table、

    js添加一行.删除一行 let str="<tr>" +"<td>"+a[1]+"</td>" +&qu ...

  4. thrift 是rpc协议

    PC(Remote Procedure Call,远程过程调用)是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过程调用) ...

  5. 混合高斯分布与 EM 算法

    极大似然估计在混合高斯分布中遇到的困难 在一般的情况下,对于所得到的样本集,\(X=\left\{x_{1}, \dots, x_{N}\right\}\),我们的目标是最大化似然函数,通过最大化似然 ...

  6. 微信小程序 调用远程接口,给全局数组赋值

    关键是 let that = this 因为在onLoad 的 wx.request方法里, this指的是 wx.request 的上下文, 所以应该是在 onLoad 的时候定义 let that ...

  7. 009 webpack将ES高级语法进行装换

    一:ES高级转换 1.main.js中的js不能解析 // js的主要入口 import $ from 'jquery' import './css/index.css' import './css/ ...

  8. 配置HTTPS全过程

    HTTPS配置全过程服务器配置https协议HTTPS,是以安全为目标的HTTP通道,简单讲是HTTP的安全版.即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL. ...

  9. sqlserver2012 用户指定数据库访问权限

    这样 用户进入的时候 就只能访问指定数据库 点击其他 显示

  10. 基于term vector深入探查数据

    1.term vector介绍 获取document中的某个field内的各个term的统计信息 term information: term frequency in the field, term ...