C#程序,用tostring()或不用,哪个更好

时间:2011-08-10 03:30:15

标签: c# .net string

一个C#程序,如你所见,var month定义为int,有人说没有.tostring()更好,它应该删除冗余调用,现在是:str= "0" + Month;  但我认为这不好。谁更好?为什么?谢谢!(ps:我在stackoverflow中的第一个问题)

string strM = string.Empty;
if ( Month < 10 )
    strM = "0" + Month.ToString ( );
    //strM = "0" + Month; which is better?

3 个答案:

答案 0 :(得分:8)

改为使用字符串格式:

string strM = string.Format("{0:00}", Month);

测试:

Month: 1 => strM: "01"
Month: 12 => strM: "12"

有关更多字符串格式提示,请检查this

答案 1 :(得分:1)

最好的方法是使用.tostring,但不是如图所示。

    using System;
    class example {
        static void Main(string[] args) {
            int Month =5;
            Console.WriteLine(Month.ToString("00"));
        }
    }

http://ideone.com/LCwca

输出:05

答案 2 :(得分:0)

至于你的问题其他部分,没有区别,只有代码的清晰度(样式)。哪个可以使用它。如果您想强调Month不是string,那么您可以添加.ToString()。如果这很明显,例如if ( Month < 10 ),那么您可以看到与int进行比较的一行,因此Month定义为string,您可以省略.ToString()调用因为它会自动完成。