What does {0} stands for in Console.WriteLine?(Console.WriteLine 中的 {0} 代表什么?)
问题描述
给定代码:
// person.cs
using System;
// #if false
class Person
{
private string myName = "N/A";
private int myAge = 0;
// Declare a Name property of type string:
public string Name
{
get
{
return myName;
}
set
{
myName = value;
}
}
// Declare an Age property of type int:
public int Age
{
get
{
return myAge;
}
set
{
myAge = value;
}
}
public override string ToString()
{
return "Name = " + Name + ", Age = " + Age;
}
public static void Main()
{
Console.WriteLine("Simple Properties");
// Create a new Person object:
Person person = new Person();
// Print out the name and the age associated with the person:
Console.WriteLine("Person details - {0}", person);
// Set some values on the person object:
person.Name = "Joe";
person.Age = 99;
Console.WriteLine("Person details - {0}", person);
// Increment the Age property:
person.Age += 1;
Console.WriteLine("Person details - {0}", person);
}
}
// #endif
代码的输出是:
Simple Properties
Person details - Name = N/A, Age = 0
Person details - Name = Joe, Age = 99
Person details - Name = Joe, Age = 100
Console.WriteLine("Person details - {0}", person); 中的 {0} 代表什么?怎么换成 Name..... 了?
What does the {0} in Console.WriteLine("Person details - {0}", person); stands for ?
How come it's replaced by Name..... ?
当我使用 {1} 而不是 {0} 时,我得到一个异常...
When I put {1} instead of {0} I get an exception ...
推荐答案
如您所见,您的 person 对象上有一个返回字符串的代码,控制台检查您的对象上是否存在名称为 ToString 的字符串类型类与否,如果存在则返回你的字符串:
As you can see, There's a code on your person object that returns a string, Console checks for If a type of string with name of ToString exists on your object class or not, If exists then It returns your string:
public override string ToString()
{
return "Name = " + Name + ", Age = " + Age;
}
并且 {0} 是格式化的消息,当您将其定义为 {0} 时,这意味着打印/格式化您插入到函数的 params 参数中的零索引对象.这是一个从零开始的数字,用于获取您想要的对象的索引,这是一个示例:
And {0} Is a formatted message, When you define It to {0} It means printing/formatting the zero Index object that you Inserted Into params arguments of your function. It's a zero based number that gets the index of object you want, Here's an example:
Console.WriteLine("{0} Is great, {1} Do you think of It? {2} Think {0} Is great!", "C#", "What", "I");
// C# Is great, What do you think of It? I think C# Is great!
当您说 {0} 时,它会获取 C# 或您的对象 [] 的 [0].
When you say {0} It gets C# or the [0] of your object[].
这篇关于Console.WriteLine 中的 {0} 代表什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Console.WriteLine 中的 {0} 代表什么?
基础教程推荐
- 从 VS 2017 .NET Core 项目的发布目录中排除文件 2022-01-01
- 在 VS2010 中的 Post Build 事件中将 bin 文件复制到物 2022-01-01
- JSON.NET 中基于属性的类型解析 2022-01-01
- 首先创建代码,多对多,关联表中的附加字段 2022-01-01
- 将事件 TextChanged 分配给表单中的所有文本框 2022-01-01
- 经典 Asp 中的 ResolveUrl/Url.Content 等效项 2022-01-01
- 如何动态获取文本框中datagridview列的总和 2022-01-01
- 全局 ASAX - 获取服务器名称 2022-01-01
- 错误“此流不支持搜索操作"在 C# 中 2022-01-01
- 是否可以在 asp classic 和 asp.net 之间共享会话状态 2022-01-01
