C#에서 List<T>의 특정 위치(인덱스)에 새 항목을 삽입하려면 Insert() 메서드를 사용합니다. Insert()는 첫 번째 매개변수로 삽입할 인덱스를, 두 번째 매개변수로 추가할 값을 전달받습니다.
1. 리스트 생성하기
먼저 정수형 리스트를 만들고 Add() 메서드로 여러 요소를 추가합니다.
List<int> list = new List<int>(); list.Add(456); list.Add(321); list.Add(123); list.Add(877); list.Add(588); list.Add(459);
2. Insert() 메서드로 특정 인덱스에 항목 삽입하기
예를 들어 인덱스 5 위치에 값 999를 삽입하려면 다음과 같이 작성합니다.
list.Insert(5, 999);
삽입이 완료되면 해당 인덱스 이후의 기존 요소들은 자동으로 한 칸씩 뒤로 밀려나고, 리스트의 Count 값은 1 증가합니다.
3. 전체 예제 코드
using System;
using System.Collections.Generic;
namespace Demo {
public class Program {
public static void Main(string[] args) {
List<int> list = new List<int>();
list.Add(456);
list.Add(321);
list.Add(123);
list.Add(877);
list.Add(588);
list.Add(459);
Console.Write("List: ");
foreach (int i in list) {
Console.Write(i + " ");
}
Console.WriteLine("\nCount: {0}", list.Count);
// 인덱스 5에 요소 삽입
list.Insert(5, 999);
Console.Write("\nList after inserting a new element: ");
foreach (int i in list) {
Console.Write(i + " ");
}
Console.WriteLine("\nCount: {0}", list.Count);
}
}
}4. 실행 결과
List: 456 321 123 877 588 459 Count: 6 List after inserting a new element: 456 321 123 877 588 999 459 Count: 7
핵심 정리
- Add(item): 리스트의 맨 끝에 항목을 추가합니다.
- Insert(index, item): 지정한 인덱스 위치에 항목을 삽입하고, 그 이후의 기존 요소들을 자동으로 뒤로 이동시킵니다.
- C#의 인덱스는 0부터 시작하므로, 인덱스 5는 여섯 번째 위치를 의미합니다.
- 리스트 범위를 벗어난 유효하지 않은 인덱스를 지정하면
ArgumentOutOfRangeException예외가 발생할 수 있으므로 주의해야 합니다.