What?s the difference between the System.Array.CopyTo() and
System.Array.Clone()?
Answers were Sorted based on User's Feedback
First of all both perform a shallow copy.
Difference is that:-
copy to() needs another array and index from which it starts copy elements of source array to destination array. E.g if destination array B[] has already 3 elements so we can pass 4 as index and B as destination array. This will make it more clear -
class CopyTO
{
public static void Main()
{
int[] A = new int[3];
int [] B = new int[7];
A[0] = 1;
A[1] = 2;
A[2] = 3;
B[0] = 4;
B[1] = 5;
A.CopyTo(B, 4);
for (int i = 0; i < B.Length; i++)
{
Console.WriteLine(B[i]);
}
}
}
The output will be 4,5,0,0,1,2,3 // It copied elements of A
from Index 4 in B.
Clone to return a array that contains elements of the source array. Its length is same as of source array.
Is This Answer Correct ? | 2 Yes | 0 No |
Answer / satish
System.Array.CopyTo() performs the deep copy that is it
creates a new duplicate copy without effect of old one.
Whereas Clone creates as shallow copy but as it is a clone
so it is linked with the old one so affect whenever changes
occures in the old one.
Is This Answer Correct ? | 1 Yes | 2 No |
Answer / rahul
The first one performs a deep copy of the array, the second
one is shallow.
Is This Answer Correct ? | 0 Yes | 3 No |
What is a string c#?
what is output parameter and parameter array?
What?s the role of the DataReader class in ADO.NET connections?
What?s class SortedList underneath?
What is the use of "default" and "Using" keyword?
What are strongly typed objects?
What is the use of dll file in c#?
What are the features of c#?
What are the delegates in c#?
What is data dictionary in c#?
What does == mean in c sharp?
Explain the difference between arraylist and array and in c#?