Object.ToString 方法
2013/3/11
返回一个字符串,它表示当前的对象。
程序集: mscorlib(位于 mscorlib.dll 中)
ToString 是 .NET Framework 中主要的格式化方法。它将对象转换为其字符串表现形式,使它适合于显示。(有关对 .NET Framework 中的格式设置支持的更多信息,请参见[0d1364da-5b30-4d42-8e6b-03378343343f]。)
ToString 方法的默认实现返回 Object 的类型的完全限定名,如以下示例所示。
因为 Object 是在 .NET Framework 中所有引用类型的基类,所以这种行为由不重写 ToString 方法的引用类型继承。下面的示例阐释了这一点。它定义了名为 Object1 的类,用来接受所有 Object 成员的默认实现。其 ToString 方法返回该对象的完全限定类型名。
Namespace Examples Public Class Object1 End Class End Namespace Module Example Public Sub Demo(outputBlock As System.Windows.Controls.TextBlock) Dim obj1 As New Examples.Object1() outputBlock.Text += obj1.ToString() End Sub End Module ' The example displays the following output: ' SilverlightApplication.Examples.Object1
类型通常覆盖 ToString 方法以返回表示对象实例的字符串。例如,基础数据类型(如 Char, Int32和 String)提供 ToString 实现该返回对象表示的值的字符串形式。下面的示例定义一个为 Object2 的类,该类重写 ToString 方法以返回类型名称以及其值。
Public Class Object2 Private value As Object Public Sub New(value As Object) Me.value = value End Sub Public Overrides Function ToString() As String Return MyBase.ToString + ": " + value.ToString() End Function End Class Module Example Public Sub Demo(outputBlock As System.Windows.Controls.TextBlock) Dim obj2 As New Object2("a"c) outputBlock.Text += obj2.ToString() End Sub End Module ' The example displays the following output: ' SilverlightApplication.Object2: a
当实现您自己的类型时,应重写 ToString 方法,以返回对这些类型有意义的值。需要比 ToString 提供的对格式设置的控制更多控制的派生类应实现 IFormattable 接口。其 IFormattable.ToString(String, IFormatProvider) 方法使您能够定义控制格式设置的格式字符串,并使用可以为区域性特定的格式设置提供的 IFormatProvider 对象。