Why does casting the same two numbers to Object make them not equal? <p>I have following code snippet but I am getting wrong output.</p> <pre><code>class Program { static void Main(string[] args) { var i = 10000; var j = 10000; Console.WriteLine((object) i == (object) j); } } </code></pre> <p><strong>I was expecting true but I am getting false</strong></p>