質問: i2; Console.WriteLine(oi1.Equals(oi2));//true Console.WriteLine(oi2.Equals(oi1));//true ```
回答: あなたのオブジェクトで `==` が期待どおりに機能しない理由について他の人がすでに説明しています。 編集に関して: `Equals` は仮想関数なので、 `Int32.Equals(object)`は機能します。戻り値が次のように定義されている、en-us/library/de3wwa8z.aspx ) が呼び出されます。 > objがInt32のインスタンスであり、このインスタンスの値と等しい場合、 *true* それ以外の場合は *false* 。 > > また、 `obi.Equals(obf))`がfalseを返す理由についても説明します。 `obf` はInt32のインスタンスではありません。