none
C#入门经典》扑克牌程序问题,关于Main函数里面的 ToString()? RRS feed

  • 问题

  •  

    //这里的tempCard为什么还ToString()一下,明明就不需要了啊?因为tempCard已经是一张牌了????

    是为了不装箱吗 ? 

    public static void Main(string[] args)
            {
                Deck myDeck = new Deck();
                myDeck.Shuffle();
                for (int i = 0; i < 52; i++)
                {
                    Card tempCard = myDeck.GetCard(i);
                    Console.WriteLine("" + (i + 1) + "   " + tempCard.ToString());//这里的tempCard为什么还ToString()一下,明明就不需要了啊?因为tempCard已经是一张牌了????
                    if (i != 51)
                        Console.Write(",");
                    else
                        Console.WriteLine();
                }
                Console.ReadKey();
            }

    2015年4月20日 8:46

答案

  • 你好:

    从你贴出的代码来看,tempCart是Card类型,输出到控制台窗口的时候需要转换为string类型,实际上如果Card类型已经重写ToString()方法,即使不调用ToString()应该也会默认调用。你可以修改代码测试看看。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.


    2015年4月21日 10:22
    版主