C# - Collections

Alpha, Orderly·2023년 7월 7일
0

CSharp

목록 보기
5/11

Array / 배열

int[] intArray = new int[4] {1, 2, 3, 4};
int[] intArray = {1, 2, 3, 4, 5};
  • 배열의 크기 지정 생략 가능.
  • C style 로도 가능.

foreach

foreach(int element in array) {
	...
}

다차원 배열

int[,] matrix; // 2차원 배열 > matrix[1, 2] 와 같이 호출.
int[,,] cubic; // 3차원 배열

int[,] example = new int[,] {{1, 2, 3}, {4, 5, 6}} // 초기화 예시

example.Rank // 배열 차원 리턴

int [,] cube = new int[3, 3] // 크기 지정 가능

int [,] cube = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; // C style 로 지정또한 여전히 가능
  • 다차원 배열의 크기는 .GetLength(n) 으로 얻어올수 있다.
  • n에는 차원이 들어가는데, 2차원의 경우 row의 갯수는 0, col의 갯수는 1으로 얻어온다.

배열 안에 배열 넣기

int[][] jaggedArray = new int[3][];
// jaggedArray[1][2] 와 같이 사용

params

public void p(params string[] sentence) {
	...
}
  • 동적 패러미터 받기
  • 위와 같이 선언시 호출할때 p("1", "2") 와 같이 여러개의 문자열을 줄수 있고, 사용시엔 배열로 사용한다.

ArrayList

  • 배열과 유사하나 여러 자료형을 담을수 있다.
AraryList example = new ArrayList(); // 크기 자동 증가
ArrayList example2 = new ArrayList(100); // 크기 지정

타입체크

int a;
if(a is int) { ... }
// a의 타입을 확인.

List

  • 특정 자료형만을 담을수 있다.

Hashtables

  • 키 <> 값 쌍으로 데이터를 저장한다.
  • 키의 자료형과 값의 자료형이 정해져있지 않다.
  • 값을 가져올땐 index 형태로 가져올수 있다
  • foreach를 통해 모든 값을 가져올수도 있다.
    • 개별 값은 DictionaryEntry 타입이다.
Hashtable table = new Hashtable();
table.Add("1", "2");
table["1"];

Dictionary

  • 키와 값의 타입을 제네릭으로 정해준다.
  • KeyValuePair 값들로 이루어져있다.

이외

  • Queue, Stack 도 있다.
profile
만능 컴덕후 겸 번지 팬

0개의 댓글