반응형
map은 하나의 형태에서 또 다른 형태의 것을 만들어 낼 수 있다.
List Mapping
void main() {
List<String> newjeans = ['민지', '하니', '다니엘', '혜린', '혜인'];
final newNewjeans = newjeans.map((x){
return '뉴진스 $x';
});
print(newjeans);
print(newNewjeans);
}
arrow함수로 표현해보면
final newNewjeans2 = newjeans.map((x) => '블랙핑크 $x');
print(newNewjeans2);
map을 한번 통과하게 되면 List는 계속 새로운 List로 생성 된다.
List로 받은 형태는 .map이 적용이 가능하다.
Map mapping
void main() {
Map<String, String> alphabet = {'A': 'a', 'B': 'b', 'C': 'c'};
final result = alphabet.map(
(key, value) => MapEntry(
'대문자 $key',
'소문자 $value',
),
);
print(alphabet);
print(result);
}
Map에서 Key값을 List로 얻고 싶을 때
void main() {
Map<String, String> alphabet = {'A': 'a', 'B': 'b', 'C': 'c'};
final keys = alphabet.keys.map((x) => '대문자 $x').toList();
final values = alphabet.values.map((x) => '소문자 $x').toList();
print(keys);
print(values);
}
Set Mapping
set은 List와 동일하지만 중복을 걸러주는 기능이 있다.
mapping은 set과 동일하다고 보면 된다.
void main() {
Set newjeans = { '민지', '하니', '다니엘', '혜린', '혜인' };
final newNewjeans = newjeans.map((x) => '뉴진스 $x').toSet();
print(newjeans);
print(newNewjeans);
}
반응형
'Flutter > Dart 문법' 카테고리의 다른 글
[Dart] List - reduce / List - fold (0) | 2023.03.23 |
---|---|
[Dart] List/map에 where사용해보기(where로 필터링) (0) | 2023.03.23 |
[Dart] 이어진 숫자 분리해서 List/map 적용하기 (0) | 2023.03.23 |
[Dart] Generic (0) | 2023.03.22 |
[Dart] 인터페이스(abstract) (0) | 2023.03.22 |