Restituisce una stringa che rappresenta l'oggetto corrente.
Assembly: mscorlib (in mscorlib.dll)
Public Overridable Function ToString As String
public virtual string ToString()
public: virtual String^ ToString()
abstract ToString : unit -> string override ToString : unit -> string
ToString è il principale metodo di formattazione in .NET Framework. Converte un oggetto nella rappresentazione in formato stringa in modo che sia adatto alla visualizzazione. Per ulteriori informazioni sul supporto per la formattazione in .NET Framework, vedere Formattazione dei tipi di dati.
L'implementazione predefinita del metodo ToString restituisce il nome completo del tipo di Object, come indicato nell'esempio seguente.
Module Example Public Sub Main() Dim obj As New Object() Console.WriteLine(obj.ToString()) End Sub End Module ' The example displays the following output: ' System.Object
using System; public class Example { public static void Main() { Object obj = new Object(); Console.WriteLine(obj.ToString()); } } // The example displays the following output: // System.Object
Poiché Object è la classe di base di tutti i tipi riferimento in .NET Framework, questo comportamento è ereditato da tipi riferimento che non eseguono l'override del metodo ToString. Nell'esempio riportato di seguito viene illustrata questa situazione. Definisce una classe denominata Object1 che accetta l'implementazione predefinita di tutti i membri Object. Il relativo metodo ToString restituisce il nome del tipo completo dell'oggetto.
Imports Examples Namespace Examples Public Class Object1 End Class End Namespace Module Example Public Sub Main() Dim obj1 As New Object1() Console.WriteLine(obj1.ToString()) End Sub End Module ' The example displays the following output: ' Examples.Object1
using System; using Examples; namespace Examples { public class Object1 { } } public class Example { public static void Main() { object obj1 = new Object1(); Console.WriteLine(obj1.ToString()); } } // The example displays the following output: // Examples.Object1
I tipi spesso eseguono l'override del metodo ToString per restituire una stringa che rappresenta un'istanza dell'oggetto. I tipi di base, come ad esempio Char, Int32 e String offrono ToString implementazioni che restituiscono il formato stringa del valore che l'oggetto rappresenta. Nell'esempio seguente viene definita la classe Object2 che esegue l'override del metodo ToString per restituire il nome del tipo e il valore.
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 Main() Dim obj2 As New Object2("a"c) Console.WriteLine(obj2.ToString()) End Sub End Module ' The example displays the following output: ' Object2: a
using System; public class Object2 { private object value; public Object2(object value) { this.value = value; } public override string ToString() { return base.ToString() + ": " + value.ToString(); } } public class Example { public static void Main() { Object2 obj2 = new Object2('a'); Console.WriteLine(obj2.ToString()); } } // The example displays the following output: // Object2: a
Note per gli implementatori
Quando si implementano tipi propri, è necessario eseguire l'override del metodo ToString per restituire valori significativi per quei tipi. Le classi derivate che richiedono più controllo sulla formattazione rispetto a quanto offerto da ToString possono implementare l'interfaccia IFormattable. Il metodo IFormattable.ToString(String, IFormatProvider) consente di definire stringhe di formato che controllano la formattazione e di utilizzare un oggetto IFormatProvider che può fornire la formattazione specifica delle impostazioni cultura.
.NET Framework
Supportato in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supportato in: 4, 3.5 SP1Supportato in:
Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2
.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Riferimenti
Altre risorse
|
Data |
Cronologia |
Motivo |
|---|---|---|
|
Marzo 2011 |
Rivisto in modo esteso. |
Commenti e suggerimenti dei clienti. |