我知道这段代码是如何工作的,但是Write方法的参数让我感到困惑。我知道Console.Write("{0}",n); prints n,
但Console.Write("{0,3}",n);
做了什么?不会Console.Write("{0} ",n);
或
Console.Write(n+" ");
做同样的事情?它是关于值分开的方式吗?
int n;
n=int.Parse(Console.ReadLine());
while (n>=0)
{
Console.Write("{0,3}",n);
n--;
}
答案 0 :(得分:5)
,3
中的Console.Write("{0,3}",n);
是一个用空格填充值的指令,最小长度为3。
写出值1
给" 1"
,写出12
给出" 12"
,写出1234
给出"1234"
。
它给出的结果与:
相同string s = n.ToString();
Console.Write(new String(' ', Math.Max(0, 3 - s.Length)) + s);