zoukankan      html  css  js  c++  java
  • Dictionary 添加重复的键值对

    上代码

     #region 测试Dictionary<TKey,TValue>如何添加键重复的内容
    
            public class MyDictionaryComparer : IEqualityComparer<string>
            {
                public bool Equals(string x, string y)
                {
                    return x!=y;
                }
    
                public int GetHashCode(string obj)
                {
                    //throw new NotImplementedException();
                    return obj.GetHashCode();
                }
            }
    
            public static void csDictionary()
            {
                Dictionary<string, string> dict = new Dictionary<string, string>(new MyDictionaryComparer());
                List<string> ts = new List<string>();
                // 输出内容到控制台
                Console.WriteLine("请输入第一个字符串:");
    
                while (true)
                {
                    string str = Console.ReadLine();
    
                    if (string.IsNullOrEmpty(str))
                    {
                        continue;
                    }
                    ts.Add(str);
                    var strarr = str.Split(',');
    
                    dict.Add(strarr[0], strarr[1]);
                    Console.WriteLine("Dictionary");
                    foreach (var item in dict)
                    {
                        Console.WriteLine("键:"+item.Key + ";值:" + item.Value);
                    }
                    Console.WriteLine("List");
                    foreach (var item in ts)
                    {
                        Console.WriteLine("值:" + item);
                    }
    
                }
            }
            #endregion

    效果图:

     正常情况下向Dictionary添加相同的键会报错,但是实现IEqualityComparer<TKey>接口 以后就不会报错了;

    源码出处:https://www.cnblogs.com/rampb/archive/2004/01/13/9668777.html

  • 相关阅读:
    洛谷 P4317
    洛谷 P6218
    洛谷 P4999
    洛谷 P2657
    CSP 2020-S2 题解
    2020CSP-S2游记
    Spring Boot中使用WebSocket总结
    防盗链
    JVM JRE和JDK的区别和联系
    Java 注解学习
  • 原文地址:https://www.cnblogs.com/pyf97/p/14155912.html
Copyright © 2011-2022 走看看