Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Método String.Copy (String)

 

Publicado: octubre de 2016

Crea una nueva instancia de String con el mismo valor que una String especificada.

Espacio de nombres:   System
Ensamblado:  mscorlib (en mscorlib.dll)

public static string Copy(
	string str
)

Parámetros

str
Type: System.String

Cadena que se va a copiar.

Valor devuelto

Type: System.String

Nueva cadena con el mismo valor que str.

Exception Condition
ArgumentNullException

El valor de str es null.

ElCopy método devuelve un String objeto que tiene el mismo valor que la cadena original pero representa una referencia de objeto diferente. Difiere de una operación de asignación, que asigna una referencia de cadena existente a una variable de objeto adicionales. En el ejemplo se ilustra la diferencia.

En el siguiente ejemplo crea dos objetos string con valores diferentes. Cuando llama el Copy método para asignar el primer valor a la segunda cadena, el resultado indica que las cadenas representan referencias a objetos diferentes, aunque sus valores ahora son iguales. Por otro lado, cuando la primera cadena se asigna a la segunda cadena, las dos cadenas tienen valores idénticos porque representan la misma referencia de objeto.

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 desde 1.1
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Volver al principio
Mostrar: