C#重写Equals和GetHashCodeC#基础学习
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了C#重写Equals和GetHashCodeC#基础学习,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2421字,纯文字阅读大概需要4分钟。
内容图文
![C#重写Equals和GetHashCodeC#基础学习](/upload/InfoBanner/zyjiaocheng/834/350130b795834d4aa576f776b4a74ca0.jpg)
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace day01 8 { 9 class Class31 10 { 11 static void Main(string[] args) 12 { 13 Student stu1 = new Student("zhangsan", 23); 14 Student stu2 = new Student("zhangsan", 23); 15 Console.WriteLine(stu1.Equals(stu2)); 16 Console.ReadKey(); 17 } 18 } 19 public class Student 20 { 21 private string name; 22 private int age; 23 public string Name { get; set; } 24 public int Age { get; set; } 25 public Student(string name,int age) 26 { 27 Name = name; 28 Age = age; 29 } 30 public override string ToString() 31 { 32 return "name: " + Name + " age: " + Age; 33 } 34 //public override bool Equals(object obj) 35 //{ 36 // if(obj == null) 37 // { 38 // return false; 39 // } 40 // if(obj.GetType() == typeof(Student)) 41 // { 42 // Student stu = (Student)obj; 43 // if(stu.Name.Equals(this.Name) && stu.Age == this.Age) 44 // { 45 // return true; 46 // } 47 // else 48 // { 49 // return false; 50 // } 51 // } 52 // else 53 // { 54 // 抛出异常 55 // throw new ArgumentException("类型转换异常"); 56 // } 57 //} 58 public override bool Equals(object obj) 59 { 60 if(obj == null) 61 { 62 return false; 63 } 64 if(obj is Student) 65 { 66 Student stu = obj as Student; 67 if(stu.Name.Equals(this.Name) && stu.Age == this.Age) 68 { 69 return true; 70 } 71 else 72 { 73 return false; 74 } 75 } 76 else 77 { 78 throw new ArgumentException("类型转换异常"); 79 } 80 81 } 82 //如何重写GetHashCode()方法 83 //先放着 84 public override int GetHashCode() 85 { 86 return base.GetHashCode(); 87 } 88 } 89 }
内容总结
以上是互联网集市为您收集整理的C#重写Equals和GetHashCodeC#基础学习全部内容,希望文章能够帮你解决C#重写Equals和GetHashCodeC#基础学习所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。