Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# List에서 Add()와 Remove() 메서드 사용법 완벽 정리

C#에서 List<T>는 제네릭(Generic) 컬렉션으로, 동일한 타입의 요소들을 크기 제한 없이 유연하게 관리할 수 있는 대표적인 자료구조입니다. List<T>가 제공하는 다양한 메서드 중에서 Add()는 요소를 추가할 때, Remove()는 특정 요소를 삭제할 때 사용됩니다.

1. Add() 메서드로 요소 추가하기

Add() 메서드는 리스트의 맨 끝에 새로운 요소를 추가합니다. 아래 예제는 문자열 타입의 List를 생성하고, Add() 메서드로 스포츠 종목을 차례대로 추가한 뒤 foreach 문으로 전체 목록을 출력하는 코드입니다.

예제 코드

using System;
using System.Collections.Generic;
class Program {
    static void Main() {
        List<string> sports = new List<string>();
        sports.Add("Football");
        sports.Add("Tennis");
        sports.Add("Soccer");
        foreach (string s in sports) {
            Console.WriteLine(s);
        }
    }
}

실행 결과

Football
Tennis
Soccer

위 실행 결과에서 볼 수 있듯이, Add() 메서드로 추가한 순서 그대로 요소들이 리스트 끝에 하나씩 저장되는 것을 확인할 수 있습니다.

2. Remove() 메서드로 요소 삭제하기

Remove() 메서드는 지정한 값과 일치하는 첫 번째 요소를 찾아 리스트에서 제거합니다. 만약 일치하는 요소가 없다면 아무 변화 없이 false를 반환하며, 요소가 성공적으로 삭제되면 true를 반환합니다.

아래 예제는 Remove() 메서드를 호출하기 전과 후의 리스트 상태를 비교하여 보여줍니다.

예제 코드

using System;
using System.Collections.Generic;
class Program {
    static void Main() {
        List<string> sports = new List<string>();
        sports.Add("Football"); // Add() 메서드로 요소 추가
        sports.Add("Tennis");
        sports.Add("Soccer");
        Console.WriteLine("Old List...");
        foreach (string s in sports) {
            Console.WriteLine(s);
        }
        Console.WriteLine("New List...");
        sports.Remove("Tennis"); // Remove() 메서드로 요소 삭제
        foreach (string s in sports) {
            Console.WriteLine(s);
        }
    }
}

실행 결과

Old List...
Football
Tennis
Soccer
New List...
Football
Soccer

실행 결과를 보면 Remove("Tennis") 호출 후 "Tennis" 항목이 리스트에서 사라지고 나머지 요소들만 남은 것을 확인할 수 있습니다.

정리

  • Add(): 리스트의 맨 끝에 새 요소를 추가합니다.
  • Remove(): 지정한 값과 일치하는 첫 번째 요소를 삭제하고, 성공 여부를 bool 값으로 반환합니다.
  • List<T>는 배열과 달리 크기가 고정되어 있지 않아 요소의 추가·삭제가 자유롭습니다.

이처럼 Add()와 Remove() 메서드만 활용해도 C# List에서 데이터를 손쉽게 추가하고 관리할 수 있습니다. 더 나아가 Insert(), RemoveAt(), Clear() 등 다른 메서드들도 함께 익혀두면 컬렉션 활용 능력을 한층 높일 수 있습니다.