Dart iterable 클래스의 유용한 메소드들

데구르르·2023년 12월 12일
0

Flutter

목록 보기
10/17

where

조건에 부합하는 것만 가져오는 메소드이다.

transactions.where((e) => e.trader.city == 'Cambridge');
   
   // 아래 if문과 동일
   List<String> result = [];
   for (int i = 0; i < transactions.length; i++) {
   	if (transactions[i].trader.city == 'Cambridge') {
   		result.add(transactions[i]);
   	}
   }

map

값을 정의한 값으로 변환해준다.

transactions.map((e) => e.trader.city);

forEach

for loop과 기능이 비슷하다. for loop을 한 줄로 표현 가능하게 해준다.

reduce

e를 받아서 리턴 코드를 실행한 결과를 v에 넣고, 이 과정을 반복한다.

transactions.map((e) => e.value)
			      .reduce((v, e) => max(v, e));
   

any

리턴코드에 정의된 사항에 부합하는 것이 있는지 없는지 확인해준다. 리턴타입은 bool이다.

transactions.any((e) => e.trader.city == 'Milano');

toList()

함수형 프로그래밍을 사용하면서 리턴 타입인 Iterable 타입을 리스트 타입으로 바꿔준다.

   transactions.where((e) => e.trader.city == 'Cambridge')
          .toList();

toSet()

Iterable 타입을 Set 타입으로 바꿔준다.

profile
개발 기록

0개의 댓글