C# 数组的复制
2015-04-22 23:08
162 查看
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace arrayClone
{
class Person
{
public string Name { get; set; }
public int Age { get; set; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
class Program
{
static void Main(string[] args)
{
int[] nArray1 = { 1, 2 };
int[] nArray2 = nArray1;
int[] nArray3 = (int[])nArray1.Clone();
Console.WriteLine(object.ReferenceEquals(nArray1,nArray2));
Console.WriteLine(object.ReferenceEquals(nArray1, nArray3));
nArray1[0] = 100;
Console.WriteLine(nArray1[0]);
Console.WriteLine(nArray2[0]);
Console.WriteLine(nArray3[0]);
Person[] personArray1 ={
new Person("zxf",23),
new Person("lisi",33),
};
Person[] personArray2 = personArray1;
Person[] personArray3 = (Person[])personArray1.Clone();
personArray1[0].Name = "zhang";
Console.WriteLine(personArray2[0].Name);
Console.WriteLine(personArray3[0].Name);
Console.WriteLine(object.ReferenceEquals(personArray1, personArray2));
Console.WriteLine(object.ReferenceEquals(personArray2, personArray3));
Console.ReadLine();
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace arrayClone
{
class Person
{
public string Name { get; set; }
public int Age { get; set; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
class Program
{
static void Main(string[] args)
{
int[] nArray1 = { 1, 2 };
int[] nArray2 = nArray1;
int[] nArray3 = (int[])nArray1.Clone();
Console.WriteLine(object.ReferenceEquals(nArray1,nArray2));
Console.WriteLine(object.ReferenceEquals(nArray1, nArray3));
nArray1[0] = 100;
Console.WriteLine(nArray1[0]);
Console.WriteLine(nArray2[0]);
Console.WriteLine(nArray3[0]);
Person[] personArray1 ={
new Person("zxf",23),
new Person("lisi",33),
};
Person[] personArray2 = personArray1;
Person[] personArray3 = (Person[])personArray1.Clone();
personArray1[0].Name = "zhang";
Console.WriteLine(personArray2[0].Name);
Console.WriteLine(personArray3[0].Name);
Console.WriteLine(object.ReferenceEquals(personArray1, personArray2));
Console.WriteLine(object.ReferenceEquals(personArray2, personArray3));
Console.ReadLine();
}
}
}
相关文章推荐
- C#中数组复制的4种方法
- C#:浅谈对象数组,运算符重载和深度复制的应用
- 关于在C#中数组(byte[])复制的两种方式。字节偏移复制与安全复制
- 浅谈C#各种数组直接的数据复制/转换
- C#:浅谈对象数组,运算符重载和深度复制的应用
- 黑马程序员之C#学习笔记:数组的复制四种方法
- C#各种数组直接的数据复制/转换
- C#中数组初始化与数组元素复制的方法
- C#中数组的复制
- C#复制数组的两种方式,以及效率比较
- C#数组复制方法详解
- C#中数组复制的4种方法
- c#复制数组的多种方法
- C#:浅谈对象数组,运算符重载和深度复制的应用
- 比较C#中几种常见的复制字节数组方法的效率[转]
- C#数组复制(合并)方法
- C#中怎么复制数组
- C# 常见的字节数组 byte[] 复制方法
- C# 常见的字节数组 byte[] 复制方法
- C# ArrayList.ToArray() (将 ArrayList 的元素复制到新数组中)