10 Array method pada Dart

dafinrs
3 min readJun 14, 2019
Photo by NASA on Unsplash

Ketika membuat aplikasi, kita pasti akan berurusan dengan yang namanya List. Pada kali ini saya coba mengambil 10 utility method list dari Dart yang bisa melakukan banyak hal dan mungkin bisa di terapkan pada aplikasi project kamu.

1. forEach

function untuk menampilkan tiap-tiap elements.

var perusahaan = [‘bukalapak’, ‘tokopedia’, ‘blibli’];
perusahaan.forEach((data)=> print(data)); bukalapak tokopedia blibli

2. map

Untuk mengubah element data dalam sebuah list.

var perusahan_id = perusahaan.map((data)=> ‘${data} indonesia’).toList();

3. contains

Method ini digunakan untuk melakukan validasi terhadap element yg ingin dicari.

var perusahaan = [‘bukalapak’, ‘tokopedia’, ‘blibli’, ‘salestock’];
print(perusahaan.contains(‘bukalapak’));

4. sort

untuk melakukan sorting pengurutan dalam list.

var randomdata = [1,3,5,20,4,2];
randomdata.sort((a, b)=> a.compareTo(b));
print(randomdata);

5. reduce

Method yang bisa digunakan untuk menggabungkan semua type yang ada di dalam list menjadi single type. Tapi perlu diingat, method ini hanya bisa digunakan untuk tipe data yang sama dalam sebuah list.

final result = [1,2,3];
print(result.reduce((prev, element) => prev + element)); // 6

6. fold

Method ini sama halnya dengan reduce, namun tetapi perbedannya, kalau reduce hanya bisa mengembalikan value type dari type data yang sama dalam sebuah list, kalau fold bisa mengembalikan value yg berbeda sesuai yang kita butuhkan , meskipun type data dalam sebuah list tersebut berbeda.

final list = ['a', 'bb', 'ccc'];
list.fold(0, (t, e) => t + e.length); // result is 6

7. every

Method ini akan melakukan pengecekan semua item dalam sebuah list sesuai dari kondisi yang kita berikan.

final result = [1,2,3];
final value = result.every((data){
print(data);
return data < 4;
});
print(value);
result: 1 2 3 true

8. any

Method ini sama halnya seperti every yang mana perbedaanya hanya saja jika menggunakan any pengecekan dalam sebuah list hanya sekali jika kondisi sudah terpenuhi (true)

final result = [1,2,3];
final value = result.any((data){
print(data);
return data < 4;
});
print(value);
result : 1 (true)

7. where

Method ini akan mengembalikan element, yang mana jika element tersebut sesuai dengan kondisi (true) yang telah kita berikan.

final numbers = <int>[1, 2, 3, 5, 6, 7];
var result = numbers.where((x) => x < 5); // (1, 2, 3)

8. firstWhere

Method ini akan mengembalikan element pertama, yang mana jika element tersebut sesuai dengan kondisi(true) yang telah kita berikan.

final numbers = <int>[1, 2, 3, 5, 6, 7];
var result = numbers.firstWhere((element) => element < 5); // 1

9. singleWhere

Method ini hampir sama dengan firstWhere, perbedaanya adalah, ketika dalam sebuah element tersebut ada dua kondisi(true) yang sama, maka akan terjadi error.

final numbers = <int>[2, 2, 10];
var result = numbers.singleWhere((element) => element > 5); // 10

10. take

Method yang akan mengembalikan Iterable mulai dari index pertama (index ke 0) sampai dengan jumlah total yang kita inginkan.

final numbers = <int>[1, 2, 3, 5, 6, 7];
final result = numbers.take(4); // (1, 2, 3, 5)
final takeAll = numbers.take(100); // (1, 2, 3, 5, 6, 7)

Kesimpulan

Ada beberapa method yang belum saya tulis, tapi terlepas itu semua mungkin dari beberapa tulisan diatas sangat membantu untuk membuka wawasan kita tentang fungsi beberapa method pada List yang ada pada Dart dan bisa digunakan pada project kalian.

Keep Coding, Stay Awesome.

sumber:
Dart documentation.
Flutter SDK.

--

--