回答編集履歴

1

式形式をブロックに変更

2022/08/01 16:58

投稿

TN8001
TN8001

スコア9326

test CHANGED
@@ -71,8 +71,18 @@
71
71
 
72
72
  class NameComparer : IEqualityComparer<Employee>
73
73
  {
74
- public bool Equals(Employee? x, Employee? y) => x?.Name == y?.Name;
74
+ //public bool Equals(Employee? x, Employee? y) => x?.Name == y?.Name;
75
+ public bool Equals(Employee? x, Employee? y)
76
+ {
77
+ return x?.Name == y?.Name;
78
+ }
79
+
75
- public int GetHashCode(Employee obj) => obj.Name?.GetHashCode() ?? 0;
80
+ //public int GetHashCode(Employee obj) => obj.Name?.GetHashCode() ?? 0;
81
+ public int GetHashCode(Employee obj)
82
+ {
83
+ if (obj.Name == null) return 0;
84
+ return obj.Name.GetHashCode();
85
+ }
76
86
  }
77
87
 
78
88
  #pragma warning disable CS8618 // null 非許容のフィールドには、コンストラクターの終了時に null 以外の値が入っていなければなりません。Null 許容として宣言することをご検討ください。