C#_ Array VS List

Today Jeeho Learned·2022년 11월 15일
0

C#

목록 보기
7/17
post-thumbnail

배열과 리스트의 차이도 제대로 정리하고 넘어가보자.

Array VS List

  • Array과 List의 가장 큰 차이점은 동적으로 크기 할당 여부이다.
  • Array는 동적으로 크기 할당이 불가능하고, List는 가능하다.
    예를 들자면 Array는 생성시에 N개의 크기로 생성한다면 N개 이상의 크기로 늘릴 수 없다는 것을 말한다. 반면에 List는 add,remove 메서드를 통해서 크기를 자유롭게 늘리고, 줄일 수 있다.

Array의 특징

  • 배열은 연속된 메모리 공간으로 메모리 관리가 용이
  • 배열의 값들은 index로 이루어져 있기때문에 접근시에 빠르게 해당 값을 찾을 수 있다.
  • 동적 할당이 불가능

List의 특징

  • 리스트는 포인터를 사용하여, 다음 데이터의 주소 값을 가지고 있기에 데이터 추가/삭제가 용이
  • 데이터의 크기를 동적으로 할당가능하다.
  • 포인터를 사용하여 다음 데이터의 주소값을 가지고 있어야 하므로, 불필요한 메모리가 추가로 사용되어 메모리 측면에서는 비효율적
  • 배열에는 index라는 key값이 존재하지만, 리스트에는 키값이 존재하지 않기에 검색이 유용하지 않다.

배열 / 리스트는 언제 사용해야 하는가?

  • 가장 중요한 포인트는 해당 데이터를 할상시, 데이터의 크기가 정해져 있는가?이다
  • 정해져있다면 배열
  • 정해지지 않았다면 리스트를 사용하는 것이 가장 좋은 방법
profile
기록해야 (살아)남는다 !

0개의 댓글