C#에서 배열을 복사하는 방법은 여러 가지가 있습니다.
배열 간 복사 중 int[] pins = {9,3,4,9};int [] alias = pins; 너무 오류의 원인은 위 코드가 잘못되지는 않지만 핀과 별칭이 참조이고 스택에 존재하고 데이터 9,3,4,3이 존재하는 int 객체이기 때문에 전혀 복사본이 아닙니다. 힙에서 int [] alias = pins; 별칭과 핀은 동시에 {9, 3, 4, 3}을 가리킵니다. 이는 필연적으로 다른 참조에도 영향을 미칩니다. . 복사란 복사한 개체와 동일한 새 개체를 만드는 것을 의미합니다. C# 언어에서 복사하려면 다음 네 가지 방법이 있어야 합니다.
방법 1: for 루프 사용
int []pins = {9,3,7,2}
int []copy = new int[pins.length];
for(int i =0;i!=copy.length;i++)
{
copy[i] = pins[i ];
}
방법 2: 배열 객체
int []pins에서 CopyTo() 메서드를 사용합니다. = {9,3,7,2}
int []copy2 = new int[pins.length];
pins.CopyTo(copy2,0);
방법 3: Array 클래스의 정적 메서드 Copy() 사용
int []pins = {9,3,7,2}
int []copy3 = new int[pins.length];
Array.Copy(pins,copy3,copy.Length);
방법 4 : Array 클래스를 사용합니다. 인스턴스 메소드 중 하나인 Clone()은 한 번 호출할 수 있어 가장 편리합니다. 그러나 Clone() 메소드는 객체를 반환하므로 적절한 클래스 유형으로 캐스팅해야 합니다.
int []pins = {9,3,7,2}
int []copy4 = (int [])pins.Clone();
방법 5:
string[] Student1 = { "$", "$", "c", "m", "d" , "1", "2", "3", "1", "2", "3" };
string[] Student2 = { "0", "1", "2", "3", "4", "5", "6", "6", "1", "8", "16", "10", "45", "37", "82" };
ArrayList Student = new ArrayList(); 🎜>}
foreach(student2의 문자열 s2)
{
Student.Add(s2);
}
string [] copyAfter = (string[])student.ToArray(typeof(string));
두 배열을 병합하고 마지막으로 병합된 결과를 copyAfter 배열에 할당합니다. 이 예제는 유연하며 여러 곳에서 사용할 수 있습니다.
C#의 배열 할당 방법과 관련된 더 많은 기사를 보려면 주의하세요. PHP 중국어 웹사이트로!