본문 바로가기

전체 글713

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.
dart - Map을 Mapping할때 - (다트 - 맵을 매핑할때) void main(){ Map harryPotter = { 'Harry Potter': '해리 포터', 'Ron Weasley' : '론 위즐리', 'Hermione Granger': '헤르미온느 그레인저' }; // map을 mapping 할때는 key와 value가 필요하다. final result = harryPotter.map( (key,value)=> MapEntry( 'Harry Potter Character $key', '해리포터 캐릭터 $value' ), ); print(result); // {Harry Potter Character Harry Potter: 해리포터 캐릭터 해리 포터, // Harry Potter Char.. 2025. 3. 24.