Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

String.Copy méthode (String)

 

Date de publication : novembre 2016

Crée une instance de String ayant la même valeur qu'un String spécifié.

Espace de noms:   System
Assembly:  mscorlib (dans mscorlib.dll)

public static string Copy(
	string str
)

Paramètres

str
Type: System.String

Chaîne à copier.

Valeur de retour

Type: System.String

Nouvelle chaîne ayant la même valeur que str.

Exception Condition
ArgumentNullException

str a la valeur null.

LeCopy méthode retourne un String objet qui a la même valeur que la chaîne d’origine, mais représente une référence d’objet différent. Il diffère d’une opération d’assignation, qui assigne une référence de chaîne existante à une variable objet supplémentaires. L’exemple illustre la différence.

L’exemple suivant crée deux objets string avec des valeurs différentes. Lorsqu’il appelle le Copy méthode pour attribuer la première valeur à la deuxième chaîne, la sortie indique que les chaînes représentent des références d’objet différentes bien que leurs valeurs sont maintenant égales. En revanche, lorsque la première chaîne est assignée à la deuxième chaîne, les deux chaînes ont des valeurs identiques, car elles représentent la même référence d’objet.

using System;

class Example
{
   public static void Main() 
   {
      string str1 = "abc";
      string str2 = "xyz";

      Console.WriteLine("str1 = '{0}'", str1);
      Console.WriteLine("str2 = '{0}'", str2);

      Console.WriteLine("\nAfter String.Copy...");
      str2 = String.Copy(str1);
      Console.WriteLine("str1 = '{0}'", str1);
      Console.WriteLine("str2 = '{0}'", str2);
      Console.WriteLine("ReferenceEquals: {0}", Object.ReferenceEquals(str1, str2));
      Console.WriteLine("Equals: {0}", Object.Equals(str1, str2));

      Console.WriteLine("\nAfter Assignment...");
      str2 = str1;
      Console.WriteLine("str1 = '{0}'", str1);
      Console.WriteLine("str2 = '{0}'", str2);
      Console.WriteLine("ReferenceEquals: {0}", Object.ReferenceEquals(str1, str2));
      Console.WriteLine("Equals: {0}", Object.Equals(str1, str2));
   }
}
// The example displays the following output:
//       str1 = 'abc'
//       str2 = 'xyz'
//       
//       After String.Copy...
//       str1 = 'abc'
//       str2 = 'abc'
//       ReferenceEquals: False
//       Equals: True
//       
//       After Assignment...
//       str1 = 'abc'
//       str2 = 'abc'
//       ReferenceEquals: True
//       Equals: True

.NET Framework
Disponible depuis 1.1
Silverlight
Disponible depuis 2.0
Silverlight pour Windows Phone
Disponible depuis 7.0
Retour au début
Afficher: