C# 中 String.Copy() 方法和 String.Clone() 方法有什么区别?


String.Copy() 方法会创建一个 String 的新实例。这和指定的 String 相同。

以下是 Copy() 方法的一个示例 -

示例

 现场演示

using System;
class Demo {
   static void Main(String[] args) {

      string str1 = "mark";
      string str2 = "marcus";

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

      Console.WriteLine("After using String.Copy...");
      str2 = String.Copy(str1);

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

输出

str1 = 'mark'
str2 = 'marcus'
After using String.Copy...
str1 = 'mark'
str2 = 'mark'

String.Clone() 方法返回对 String 实例的引用。以下是 Clone() 方法的一个示例 -

示例

 现场演示

using System;
class Demo {
   static void Main(String[] args) {
     
      string str1 = "amy";
      string str2 = "emma";

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

      Console.WriteLine("After using String.Clone...");
      str2 = (String)str1.Clone();

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

输出

str1 = 'amy'
str2 = 'emma'
After using String.Clone...
str1 = 'amy'
str2 = 'amy'

更新日期: 2020 年 6 月 21 日

436 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告