Object.ToString 方法

定义

返回表示当前对象的字符串。

C#
public virtual string ToString();
C#
public virtual string? ToString();

返回

表示当前对象的字符串。

注解

有关此 API 的详细信息,请参阅 Object.ToString 的补充 API 说明

继承者说明

实现自己的类型时,应重写 ToString() 方法以返回对这些类型有意义的值。 需要对格式设置进行更多控制而不是 ToString() 提供的派生类可以实现 IFormattable 接口。 其 ToString(String, IFormatProvider) 方法使你能够定义控制格式格式的格式字符串,并使用 IFormatProvider 可以提供区域性特定格式设置的对象。

方法的 ToString() 替代应遵循以下准则:

  • 返回的字符串应该友好且可由人类读取。

  • 返回的字符串应唯一标识对象实例的值。

  • 返回的字符串应尽可能短,以便它适合由调试器显示。

  • 重写 ToString() 不应返回 Empty 或返回 null 字符串。

  • 替代 ToString() 不应引发异常。

  • 如果实例的字符串表示形式区分区域性,或者可以通过多种方式设置格式,请实现 IFormattable 接口。

  • 如果返回的字符串包含敏感信息,应首先要求具有适当的权限。 如果需求成功,可以返回敏感信息:否则,应返回排除敏感信息的字符串。

  • 替代 ToString() 应该没有明显的副作用,以避免调试时出现复杂情况。 例如,对 方法的 ToString() 调用不应更改实例字段的值。

  • 如果类型实现分析方法 (或 ParseTryParse 方法、构造函数或其他静态方法(从字符串) 实例化类型的实例),则应确保方法返回的 ToString() 字符串可以转换为对象实例。

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

另请参阅