728x90
리스트(List)에서 자주 사용하는 함수
리스트(List)는 프로그래밍 언어에서 사용되는 중요한 자료구조 중 하나이며 데이터를 순서대로 저장하고 관리합니다. 이번에는 C#에서 리스트(List)를 사용하는 방법에 대해서 알아봅니다.
1. 리스트 생성
최초에 리스트를 생성합니다.
using System.Collections.Generic;
List<int> myList = new List<int>();
반응형
2. 요소 추가
다양한 방법으로 요소를 추가할 수 있습니다.
//기본적인 요소 추가 방식
List<int> myList1 = new List<int>();
myList1.Add(1);
myList1.Add(2);
myList1.Add(3);
//요소와 함께 초기화 방식
List<int> myList2 = new List<int>() {1,2,3};
//반복문을 이용한 요소 추가 방식
List<int> myList = new List<int>();
for(int i = 1; i <= 3; ++i)
myList.Add(i);
//배열 요소 추가 방식
int[] resources = {1,2,3};
List<int> myList = new List<int>();
myList.AddRange(resources);
//리스트 병합 추가 방식
List<int> resources = new List<int>(){1,2,3};
List<int> myList = new List<int>();
myList.AddRange(resources);
3. 요소 접근
다양한 방법으로 요소에 접근할 수 있습니다.
//인덱스를 통한 요소 접근 방식
Console.WriteLine(myList[0]);
Console.WriteLine(myList[1]);
Console.WriteLine(myList[2]);
//반복문을 이용한 요소 접근 방식
foreach(var item in myList)
Console.WriteLine(item);
4. 요소 제거
요소를 제거하는 다양한 방법이 있습니다. 상황에 맞는 방법으로 사용하면 됩니다.
//해당 값 제거 방식 (값이 1인 요소를 제거합니다)
myList.Remove(1);
//인덱스 참조 제거 방식 (0번째 인덱스 요소를 제거 합니다)
myList.RemoveAt(0);
//모든 요소 제거
myList.Clear();
//범위 제거 방식 (ex 0번째 인덱스 부터 2개의 요소를 제거합니다.)
myList.RemoveRange(0,2);
5. 리스트 길이 확인
리스트의 길이를 알 수 있습니다.
//Count를 통해 리스트 요소 수를 가져옵니다.
var myListCount = myList.Count;
Console.WriteLine($"List Count : {myListCount}");
6. 리스트 정렬
리스트를 정렬할 수 있습니다.
//내림차순 정렬
myList.Sort();
//오름차순 정렬
myList.Reverse();
7. 리스트 검색
리스트 내의 값을 검색하여 접근 인덱스를 가져올 수 있습니다.
// 값이 3인 요소의 인덱스 검색
int index = myList.IndexOf(3);
Console.WriteLine($"Index : {index}");
//※값이 존재하지 않을경우 '-1'을 반환 합니다.
결론
리스트를 상황에 맞춰 활용하길 바랍니다.
더 다양한 방법은 아래 링크에서 확인하실 수 있습니다.
https://learn.microsoft.com/ko-kr/dotnet/api/system.collections.generic.list-1?view=net-8.0
728x90
반응형
'개발 > C#' 카테고리의 다른 글
[C#] 해시셋(HashSet) 활용하기 (1) | 2023.12.16 |
---|---|
[C#] 딕셔너리(Dictionary) 완벽 사용법 (0) | 2023.12.11 |
[C#]문자열(string)변수의 정의 방법 (string.format, $ 등) (0) | 2023.12.10 |
C#에서 partial 키워드로 코딩하기 (0) | 2023.11.10 |
c# List나 Dictionary 의 capacity 설정 (0) | 2021.02.23 |
댓글