ToString()メソッドは乱用ではありません


この方法では,まずオブジェクトがnullではないことを保証し,また,それ自体がstringタイプであればこのような方法を用いる必要はなく,余計なことは肝心ではなく,肝心なのは効率の低下である.
次のコードを実行すると、出荷することができます.
            string str = "abcdefghigklmn";
            string other = null;
            Stopwatch sw = Stopwatch.StartNew();
            sw.Start();
            for (int i = 0; i < int.MaxValue; i++)
            {
                other = str.ToString();
            }
            sw.Stop();
            Console.WriteLine("  ToString()     :" + sw.ElapsedMilliseconds);
            sw = null;
            GC.Collect();


            sw = Stopwatch.StartNew();
            sw.Start();
            for (int i = 0; i < int.MaxValue; i++)
            {
                other = str;
            }
            sw.Stop();
            Console.WriteLine("  ToString()     :" + sw.ElapsedMilliseconds);


            Console.ReadLine();