본문 바로가기
C#, MONO

c#의 배열과 리스트

by gigasound 2021. 10. 6.


배열과 리스트

c#에서 배열(array)과 리스트(list)는 다수의 데이터를 처리하는데 유용합니다. c#에는 매우 다양한 형태의 배열과 리스트가 있고, 이를 활용하는 방법또한 매우 다양합니다. 이글에서는 배열을 초기화하는 방법등의 기초적인 내용과 함께 배열과 리스트를 상호 변환하는 방법을 알아보겠습니다.


다차원 배열의 할당

c#에서는 다차원 배열은 다음과 같이 할당합니다.

int[] Array1 = new int[20];
int[,] IntArray20 = new int[20,30];

다른 다차원 배열 방법도 있습니다. 초기 할당 방법이 C와 유사합니다. 

const int size_x = 10;
const int size_y = 20;
Float[][] a;
a = new float[size_x][];
for(int i =0;i<size_x;i++){
	a[i] = new float[size_y];
    for(int j =0;j<size_y;i++){
    	a[i][j] = 0.0f;
    }
}

배열 크기의 재할당

배열의 크기를 재할당하려면 다음과 같습니다.

int[,] arr = new int[10,2]; 
arr = (int[,]) ResizeArray(arr, new int[] { 2, 2} );

배열의 복사

배열 자체를 복사하는 방법은 다음과 같습니다. 

int[] Array = new int[4];
int[] Array2 = (int[])Array.Clone();

배열을 문장으로 변환

통신 등에서 수신된 문자(char)를 배열에 기록하고 이를 다시 문장으로 묶고 싶을 때가 있습니다, 이때 아래의 방법을 사용합니다.

char[] cmd0_buff;
string str =string.Concat(cmd0_buff)

배열의 형변환

배열의 형을 몽땅 변경해서 다른 배열로 할당하는 방법은 아래와 같습니다.

float[] data; 
double[] d = Array.ConvertAll(data.ToArray(),x => (double)x);

 

리스트의 할당

리스트는 다음과 같이 할당을 합니다. using System.Collections.Generic; 을 사용해야 합니다. 

List<int> IntList0 = new List<int>();
List<int> IntList1 = new List<int>(new int[20]);
List<List<int>> IntList2 = new List<List<int>>();
List<int[]> IntList3 = new List<int[]>();

배열과 리스트의 상호 변환

배열을 리스트로 변환하는 방법은 아래와 같습니다.

public List<int> testList;
public int[] testArray;

testList = new List<int>(testArray);

리스트를 배열로 변환하는 방법은 아래와 같습니다.

public List<int> testList;
public int[] testArray;

testArray = testList.ToArray();

광고좀 꾹 눌러주시면 고맙겠습니다. 


위의 내용을 참조용으로만 사용해주세요. 무단 도용이나 무단 복제는 불허합니다.

기타 문의 사항은 gigasound@naver.com에 남겨 주시면 고맙겠습니다.

'C#, MONO' 카테고리의 다른 글

c#의 구조체  (0) 2021.10.08
c# 다항식 연산  (0) 2021.10.08
c#의 Enum 멤버의 정보 추출  (0) 2021.10.06
테이블 컬럼 조작  (0) 2021.08.21
c#에서 Sqlite를 연결, 데이터 읽어 오기, 수정하기  (0) 2021.08.20