Maison  >  Article  >  développement back-end  >  Quelles interfaces la classe Array en C# implémente-t-elle ?

Quelles interfaces la classe Array en C# implémente-t-elle ?

WBOY
WBOYavant
2023-09-16 16:17:041255parcourir

Quelles interfaces la classe Array en C# implémente-t-elle ?

System.Array implémente des interfaces telles que ICloneable, IList, ICollection et IEnumerable. L'interface ICloneable crée une copie d'un objet existant, un clone.

Comprenons l'interface ICloneable. Il n'a qu'une méthode Clone() car il crée un nouvel objet qui est une copie de l'instance actuelle.

L'exemple suivant montre comment effectuer un clonage à l'aide de l'interface ICloneable -

Exemple

using System;

class Car : ICloneable {
   int width;

   public Car(int width) {
      this.width = width;
   }

   public object Clone() {
      return new Car(this.width);
   }

   public override string ToString() {
      return string.Format("Width of car = {0}",this.width);
   }
}

class Program {
   static void Main() {
      Car carOne = new Car(1695);
      Car carTwo = carOne.Clone() as Car;

      Console.WriteLine("{0}mm", carOne);
      Console.WriteLine("{0}mm", carTwo);
   }
}

Voyons maintenant comment cloner un tableau à l'aide de Array.Clone en C# -

Exemple

using System;

class Program {
   static void Main() {
      string[] arr = { "one", "two", "three", "four", "five" };
      string[] arrCloned = arr.Clone() as string[];

      Console.WriteLine(string.Join(",", arr));

      // cloned array
      Console.WriteLine(string.Join(",", arrCloned));
      Console.WriteLine();
   }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer