Dart는 다양한 타입의 컬렉션을 제공하여 데이터를 효율적으로 관리할 수 있게 합니다. 이 중 가장 널리 사용되는 컬렉션 타입은 List, Map, 그리고 Set입니다. 각 컬렉션은 특정한 사용 사례에 적합하도록 설계되었습니다.
List는 순서가 있는 요소의 집합으로, 중복된 요소를 포함할 수 있습니다. Dart에서 List는 배열이나 다른 언어의 리스트와 유사한 개념입니다.
특징
사용법
var numbers = [1, 2, 3, 4, 5]; // 숫자 리스트 생성
var names = List<String>.filled(5, '영주'); // 길이가 5이고, 모든 요소가 '영주'인 리스트 생성
// 요소 추가
numbers.add(6);
// 요소 접근
print(numbers[0]); // 첫 번째 요소 출력
// 리스트 순회
for (var name in names) {
print(name);
}
Map은 키와 값의 쌍으로 데이터를 저장합니다. 각 키는 유니크해야 하며, 하나의 키는 하나의 값을 가리킵니다. 이는 다른 언어의 딕셔너리나 해시맵과 유사한 개념입니다.
특징
사용법
var capitals = {
'USA': 'Washington D.C.',
'India': 'New Delhi',
'Japan': 'Tokyo',
}; // Map 생성
// 요소 추가
capitals['South Korea'] = 'Seoul';
// 요소 접근
print(capitals['USA']); // USA의 수도 출력
// Map 순회
capitals.forEach((key, value) {
print('The capital of $key is $value');
});
Set은 유니크한 요소의 집합으로, 중복된 요소를 포함할 수 없습니다. 이는 수학적 집합의 개념과 유사합니다.
특징
사용법
var numbers = {1, 2, 3, 4, 5}; // Set 생성
// 요소 추가
numbers.add(6);
numbers.add(1); // 이미 존재하는 요소는 추가되지 않음
// 요소 확인
print(numbers.contains(3)); // true
// Set 순회
for (var number in numbers) {
print(number);
}
List, Map, Set은 Dart에서 데이터를 효율적으로 저장하고 관리할 수 있는 기본적인 컬렉션 타입입니다. 각각의 컬렉션이 제공하는 특징과 메소드를 이해하고 적절히 활용하면, 다양한 데이터 구조와 알고리즘 문제를 해결하는 데 큰 도움이 됩니다. Dart에서의 컬렉션 사용법을 마스터하면, 보다 효율적이고 강력한 애플리케이션 개발이 가능해집니다.