二者都是用于复制数组的方法,但它们有一些区别:
System.Array.CopyTo():
- 方法签名:void CopyTo(Array array, int index)
- 功能:将当前数组的所有元素复制到另一个数组中。
- 参数:
- array:目标数组,即要将元素复制到的数组。
- index:目标数组中的起始索引,从该索引开始复制元素。
- 返回值:无
- 注意事项:
- 目标数组必须具有足够的空间来容纳当前数组的所有元素,否则会引发异常。
- 复制操作会从当前数组的第一个元素开始,按顺序复制到目标数组中。
System.Array.Clone():
- 方法签名:object Clone()
- 功能:创建当前数组的浅表副本。
- 参数:无
- 返回值:返回一个新的数组对象,该对象是当前数组的浅表副本。
- 注意事项:
- 浅表副本意味着新数组和原始数组共享相同的元素对象。如果修改其中一个数组中的元素对象,另一个数组中的相应元素也会受到影响。、
- 新数组的类型与原始数组的类型相同。
总结:
- System.Array.CopyTo() 方法将当前数组的所有元素复制到另一个数组中,并且可以指定目标数组的起始索引。
- System.Array.Clone() 方法创建当前数组的浅表副本,返回一个新的数组对象。