개발일지714 dart - functional program (펑셔널 프로그램) void main() { final List> people = [ {'name': '지수', 'group': '블랙핑크'}, {'name': '제니', 'group': '블랙핑크'}, {'name': '뷔', 'group': 'BTS'}, {'name': '정국', 'group': 'BTS'}, ]; print(people); // [{name: 지수, group: 블랙핑크}, {name: 제니, group: 블랙핑크}, // {name: 뷔, group: BTS}, {name: 정국, group: BTS}] print(''); final parsedPeople = people.map( // 각각 !를 넣어서 "이 값은 존재한다. 라고 전달해줘야한다." (x.. 2025. 3. 24. dart - cascading (다트 - 캐스캐이딩) // cascading operatingvoid main(){ List even = [2,4,6,8,10]; List odd = [1,3,5,7,9]; // 기본try print([even, odd]); // [[2, 4, 6, 8, 10], [1, 3, 5, 7, 9]] // cascading try (폭포수라는 뜻) print([...even, ...odd]); // [2, 4, 6, 8, 10, 1, 3, 5, 7, 9] }기본적으로 변수 앞에 ... 점 3개를 붙여주면, cascading 기능이다. 2025. 3. 24. dart - fold (reduce와 비슷한 반복문) void main(){ List numbers = [1,3,5,7,9]; final sum = numbers.fold(0, (prev, next){ // 과정출력 print('--------------'); print('prev: $prev'); print('next: $next'); print('total: ${prev + next}'); return prev + next; }); print(sum);}이것에 대한 결과는// 1트부터 reduce와 차이점은, 파라메타에 첫 값으로 입력된 0이 prev 값으로 들어간다.// next에는 numbers[0]이 들어간다.// 그외의 진행은 reduce와 같다.// 그래서 1트의 total이 2트의 prev.. 2025. 3. 24. dart - reduce 설명 (loop문), 애로우문 포함 void main(){ List numbers = [ 1,3,5,7,9 ]; // reduce의 원리 - 일종의 반복문과 같다. // 1. 1트에서는 prev에 numbers[0]인 1, next에 numbers[1]인 3이 입력된다. final result = numbers.reduce((prev, next){ print('----------'); print('previous : $prev'); print('next : $next'); print('total: ${prev + next}'); // 2. 1트의 마지막 return 값에서 1+3로 4가 된다. // 이것은 2트부터의 prev값이 된다. return prev + next; }.. 2025. 3. 24. 이전 1 2 3 4 5 ··· 179 다음