C# 我无法在控制台上打印变量

C# 我无法在控制台上打印变量,c#,C#,我正在学习C语言,我写了下面的代码,但我无法在控制台上打印名称。有人能告诉我为什么吗 public class BaseClass { public String Name; public void Print() { Console.WriteLine("Name is:", Name); } } class PublicDemo { static void Main(string[] args) { B

我正在学习C语言,我写了下面的代码,但我无法在控制台上打印名称。有人能告诉我为什么吗

 public class BaseClass
{
    public String Name;

    public void Print()
    {

        Console.WriteLine("Name is:", Name);

    }

}
class PublicDemo
{
    static void Main(string[] args)
    {
        BaseClass bc = new BaseClass();
        Console.Write("Enter your Name:");
        bc.Name = Console.ReadLine();
        Console.ReadLine();
        bc.Print();
        Console.ReadLine();
    }
}
试试这个:

Console.WriteLine("Name is: {0}", Name);
编写方法字符串,对象[]的工作方式类似于String.Format

此方法使用.NET的复合格式功能 框架将对象的值转换为其文本表示形式 并将该表示嵌入到字符串中。结果字符串是 写入输出流

format参数由零行或多行混合文本组成 如果有零个或多个索引占位符(称为格式项),则 对应于此方法的参数列表中的对象。这个 格式化过程用文本替换每个格式项 表示相应对象的值

格式项的语法为{index[,alignment][:formatString]}, 它指定了强制索引、可选长度和对齐方式 的格式文本,以及可选的格式说明符字符串 用于控制相应对象的值的显示方式的字符 格式化


这是因为WriteLine调用中没有format参数:

你可以做很多事情:

Console.WriteLine("Name three times: {0} {0} {0}, followed by three {1}", Name, 3);
// Name three times: user1794624 user1794624 user1794624, followed by three 3
行Console.writeen输入您的姓名:;这就是问题所在。它将永远不会打印值或变量名,因为您没有将其包含在列表中

对象[]的Console.Write方法字符串具有与该方法相同的行为。 实际上,行Console.writeen输入您的名称:{0},Name;具有相同的输出

Console.Write(String.Format("Enter your Name: {0}",Name));
然后使用:

Console.Write("Enter your Name: {0}", Name);


您看到的行为是什么?@SelectDistinct仍然不会打印名称您应该以小写字母开始变量,方法保持大写字母。欢迎提供任何解释。仅仅是一个代码修复是没有帮助的。
Console.Write("Enter your Name: {0}", Name);
Console.Write("Enter your Name: " + Name);
Console.Write(String.Format("Enter your Name: {0}",Name));