Просто никогда не используйте ==, и вам не придется учить все эти безумные правила приведения.
Можно, наверное, использовать == вместо === для сравнения «123» == new String(«123»), но, на мой взгляд, проще написать Equals метод и забыть про кошмары ==. :)