如何:重写 ToString 方法(C# 编程指南)

C# 中的每个类或结构都隐式继承 Object 类。 因此,C# 中的每个对象都会获得 ToString 方法,此方法返回该对象的字符串表示形式。 例如,所有 int 类型的变量都有一个 ToString 方法,此方法可让这些变量将其内容作为字符串返回:

int x = 42;
string strx = x.ToString();
Console.WriteLine(strx);
// Output:
// 42

创建自定义类或结构时,应该重写 ToString 方法,以便向客户端代码提供类型信息。

有关如何使用格式字符串和自定义格式化的其他类型的信息。 ToString 方法的,请参见 格式化类型

安全说明安全说明

当您决定通过此方法提供的信息的类型时,应考虑您的类或结构是否会被不受信任的代码使用。请务必确保您没有提供任何会被恶意代码利用的信息。

在类或结构中重写 ToString 方法

  1. 通过下面的修饰符和返回类型声明 ToString 方法:

    public override string ToString(){}
    
  2. 实现该方法,使其返回一个字符串。

    下面的示例返回类的名称以及特定于该类的某个实例的数据。

        class Person
        {
            public string Name { get; set; }
            public int Age { get; set; }
    
            public override string ToString()
            {
                return "Person: " + Name + " " + Age;
            }
        }
    
    

    您可以测试 ToString 方法,如下面的代码示例所示:

    Person person = new Person { Name = "John", Age = 12 };
    Console.WriteLine(person);
    // Output:
    // Person: John 12
    

请参见

参考

类和结构(C# 编程指南)

string(C# 参考)

new(C# 参考)

override(C# 参考)

virtual(C# 参考)

IFormattable

概念

C# 编程指南

其他资源

字符串(C# 编程指南)

格式化类型