zoukankan      html  css  js  c++  java
  • .Net 相等性的测试题目,看你基础牢不牢

    有这么一个简单类People:

        class People
        {
            
    public int Id { getset; }
            
    public string Name { getset; }

            
    public override string ToString()
            {
                
    return string.Format("Id: {0}; Name: {1}", Id, Name);
            }
        }

    请看以下代码,给出b0~b6的值(b6的相关代码不熟悉的话,可以只给出b0~b5的值):

        private static void Test()
        {
            People[] ps0 
    = new People[]{
                
    new People{ Id=1, Name = "aaa"},
                
    new People{ Id=2, Name = "bbb"},
                
    new People{ Id=3, Name = "ccc"}
            };
            List
    <People> ps1 = new List<People>(ps0);
            Collection
    <People> ps2 = new Collection<People>(ps1);
            IEnumerable
    <People> ps3 = YeildRet(ps0);
            Dictionary
    <People, string> dict = ps0.ToDictionary(p=>p, p=>p.Name);

            People p0 
    = new People { Id = 1, Name = "aaa" };

            
    //
            bool b0 = p0 == ps0[0];
            
    bool b1 = p0.Equals(ps0[0]);
            
    //
            bool b2 = ps0.Contains(p0);
            
    bool b3 = ps1.Contains(p0);
            
    bool b4 = ps2.Contains(p0);
            
    bool b5 = ps3.Contains(p0);
            
    //
            bool b6 = dict.ContainsKey(p0);
        }

        
    private static IEnumerable<People> YeildRet(People[] peoples)
        {
                
    yield return peoples[0];
                
    yield return peoples[1];
                
    yield return peoples[2];
        }

     下面会把People类逐步改进,同样请给出每个版本的b0~b6的值,一个版本一个版本做,做完一个版本才能展开下一个版本。不要作弊奥!

    People版本二

    再改进,

    People版本三

    再改进

    People版本四

    再改进:

    People版本五

     说明:代码仅供测试用,没有进行null值处理。

  • 相关阅读:
    经典的ajax遍历循环
    fastadmin别名关联表与js下划线冲突问题解决:with里的别名,不要用驼峰,用shippingtype
    thinkphp 临时关闭布局,ajax只输出主题部分
    linux php5.6 链接sql server
    ecstore导入文件开发问题解决 死循环+不兼容mac换行解决
    thinkphp 二级目录安装
    解决crontab执行时间与系统时间不一致的问题
    电阻性能检测的二种方法(转载)
    短路的原因与危害有哪些
    潮湿引发的电路板常见故障(转载)
  • 原文地址:https://www.cnblogs.com/ldp615/p/1560543.html
Copyright © 2011-2022 走看看