알아야 할 상위 10가지 어레이 유틸리티 방법(Dart) 🎯
오늘 기사에서는 Dart의 "배터리 포함"개념, 특히 목록 작업을 위한 inbuilt utilities에 대해 살펴보겠습니다. 다음 앱에 대해 알고 있는 가장 일반적인 10가지를 직접 선택했습니다. 나는 또한 prepared 예제 스니펫을 가지고 있으므로 직접 가지고 놀 수 있습니다 😁
그럼 시작할까요?
1. forEach()
목록의 각 요소에 대해 함수를 실행합니다.
var fruits = ['banana', 'pineapple', 'watermelon'];
fruits.forEach((fruit) => print(fruit)); // => banana pineapple watermelon
2. 지도()
주어진 목록의 각 요소를 변환한 후 새 목록을 생성합니다.
var mappedFruits = fruits.map((fruit) => 'I love $fruit').toList();
print(mappedFruits); // => ['I love banana', 'I love pineapple', 'I love watermelon']
3. 포함()
주어진 요소가 목록에 있는지 확인합니다.
var numbers = [1, 3, 2, 5, 4];
print(numbers.contains(2)); // => true
4. 정렬()
제공된 정렬 기능을 기반으로 목록의 요소를 정렬합니다.
numbers.sort((num1, num2) => num1 - num2); // => [1, 2, 3, 4, 5]
5. 축소(), 접기()
주어진 함수를 사용하여 목록의 요소를 단일 값으로 압축합니다.
var sum = numbers.reduce((current, next) => current + next);
print(sum); // => 15
// with fold() you provide an initial value
const initialValue = 10;
var sum2 = numbers.fold(initialValue, (current, next) => current + next);
print(sum2); // => 25
6. 모든()
모든 요소가 테스트를 만족하는지 확인
List<Map<String, dynamic>> users = [
{ "name": 'John', "age": 18 },
{ "name": 'Jane', "age": 21 },
{ "name": 'Mary', "age": 23 },
];
var is18AndOver = users.every((user) => user["age"] >= 18);
print(is18AndOver); // => true
var hasNamesWithJ = users.every((user) => user["name"].startsWith('J'));
print(hasNamesWithJ); // => false
7. where(), firstwhere(), singlewhere()
테스트를 만족하는 요소 모음을 반환합니다.
// See #6 for users list
var over21s = users.where((user) => user["age"] > 21);
print(over21s.length); // => 1
var nameJ = users.firstWhere((user) => user["name"].startsWith('J'), orElse: () => null);
print(nameJ); // => {name: John, age: 18}
var under18s = users.singleWhere((user) => user["age"] < 18, orElse: () => null);
print(under18s); // => null
firstWhere()
는 목록에서 첫 번째 일치 항목을 반환하고 singleWhere()
는 일치 항목이 정확히 하나인 경우 첫 번째 일치 항목을 반환합니다.8. 테이크(), 스킵()
요소를 포함하거나 건너뛰는 동안 컬렉션을 반환합니다.
var fiboNumbers = [1, 2, 3, 5, 8, 13, 21];
print(fiboNumbers.take(3).toList()); // => [1, 2, 3]
print(fiboNumbers.skip(5).toList()); // => [13, 21]
print(fiboNumbers.take(3).skip(2).take(1).toList()); // => [3]
9. List.from()
주어진 컬렉션에서 새 목록을 만듭니다.
var clonedFiboNumbers = List.from(fiboNumbers);
print('Cloned list: $clonedFiboNumbers');
Dart 2.0부터 객체를 인스턴스화할 때
new
키워드는 선택 사항입니다.10. 확장()
각 요소를 0개 이상의 요소로 확장합니다.
var pairs = [[1, 2], [3, 4]];
var flattened = pairs.expand((pair) => pair).toList();
print('Flattened result: $flattened'); // => [1, 2, 3, 4]
var input = [1, 2, 3];
var duplicated = input.expand((i) => [i, i]).toList();
print(duplicated); // => [1, 1, 2, 2, 3, 3]
결론
이것이 통찰력이 되었기를 바라며 이것이 Dart에 대한 첫 번째 노출이라면 기본 사항을 파악하기 위해 저의 글을 읽으십시오. 이 문서의 예제 스니펫은 DartPad에서 사용할 수 있습니다.
Dart에 대한 더 많은 콘텐츠를 보려면 저를 좋아요하고 팔로우하세요😍.
이것으로 튜토리얼을 마칩니다. 읽어 주셔서 감사합니다.
다음에 확인해야 할 사항
계속 읽기:
알아야 할 상위 10가지 지도/객체 유틸리티 방법(Dart) 🎯
Jermaine Oppong ・ 2018년 7월 23일 ・ 2분 읽기
#dart
#webdev
#beginners
#showdev
Reference
이 문제에 관하여(알아야 할 상위 10가지 어레이 유틸리티 방법(Dart) 🎯), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/graphicbeacon/top-10-array-utility-methods-you-should-know-dart-version--3217텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)