一个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?
答案 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"));
}
}
输出:05
答案 2 :(得分:0)
至于你的问题其他部分,没有区别,只有代码的清晰度(样式)。哪个可以使用它。如果您想强调Month
不是string
,那么您可以添加.ToString()
。如果这很明显,例如if ( Month < 10 )
,那么您可以看到与int
进行比较的一行,因此Month
定义为string
,您可以省略.ToString()
调用因为它会自动完成。