Belajar Dart Dasar 7#: Collection Data


👍 0 ❤️ 0 💡 0 🔥 0 🙌 0 🥳 0
Belajar Dart Dasar 7#: Collection Data

Collections data adalah struktur yang digunakan untuk menyimpan dan megelola sekumpulan data. Jadi kita tidak perlu membuat satu persatu dalam menyimpan data, dengan collections data ini kita bisa menyimpan beberapa nilai atau objek bersama-sama dalam satu entitas.

Pada program dart terdapat beberapa collections data di antaranya List, map, dan set. Yuk mari kita bahas agar lebih paham.

1. List (Array)

List adalah koleksi ordered (terurut) yang menyimpan elemen dengan indeks numerik (dimulai dari 0).

Contoh deklarasi

List<int> numbers = [1, 2, 3, 4]; // List dengan tipe int
var names = ['Alice', 'Bob', 'Charlie']; // List dengan tipe inferred (String)
List<dynamic> mixed = [1, 'Dart', true]; // List dengan berbagai tipe

Operasi Dasar pada List

  • Akses Elemen:

    print(names[0]); // Output: Alice
    
  • Menambah Elemen:

    names.add('Diana'); // Menambah di akhir
    names.insert(1, 'Eve'); // Menyisipkan di indeks 1
    
  • Menghapus Elemen:

    names.remove('Bob'); // Hapus berdasarkan nilai
    names.removeAt(0); // Hapus berdasarkan indeks
    
  • Spread Operator (...) untuk menggabungkan list:

    var newList = [...numbers, 5, 6]; // [1, 2, 3, 4, 5, 6]
    
  • Collection if dan for untuk list dinamis:

    bool isAdmin = true;
    var menuItems = [
      'Home',
      'Profile',
      if (isAdmin) 'Admin Panel', // Hanya ditambahkan jika isAdmin = true
    ];
    
    var squares = [for (var n in numbers) n * n]; // [1, 4, 9, 16]
    

2. Map (Key-Value Pair)

Map adalah koleksi unordered yang menyimpan data dalam bentuk pasangan key-value (mirip dictionary di Python atau objek di JavaScript).

Contoh Deklarasi Map

Map<String, int> ages = {
  'Alice': 25,
  'Bob': 30,
  'Charlie': 22,
};

var person = {
  'name': 'Diana',
  'age': 28,
  'isStudent': false,
};

Operasi Dasar pada Map

  • Akses Nilai:

    print(ages['Alice']); // Output: 25
    
  • Menambah/Update Entri:

    ages['Diana'] = 28; // Menambah key baru
    ages['Bob'] = 31; // Update nilai Bob
    
  • Menghapus Entri:

    ages.remove('Charlie');
    
  • Cek Key/Value:

    print(ages.containsKey('Alice')); // true
    print(ages.containsValue(30)); // true
    

3. Set (Koleksi Unik)

Set adalah koleksi unordered yang hanya menyimpan nilai unik (tidak ada duplikat).

Contoh Deklarasi Set

Set<String> fruits = {'Apple', 'Banana', 'Orange'};
var uniqueNumbers = {1, 2, 3, 3, 4}; // {1, 2, 3, 4} (duplikat dihapus)

Operasi Dasar pada Set

  • Menambah Elemen:

    fruits.add('Mango');
    
  • Menghapus Elemen:

    fruits.remove('Apple');
    
  • Operasi Himpunan (Union, Intersection, dll.):

    var setA = {1, 2, 3};
    var setB = {3, 4, 5};
    
    print(setA.union(setB)); // {1, 2, 3, 4, 5}
    print(setA.intersection(setB)); // {3}
    

Perbandingan List, Map, dan Set

Fitur List Map Set
Order ✔️ (Indeks) ❌ (Key-based) ❌ (Unordered)
Duplikat ✔️ Diizinkan ❌ Key unik ❌ Nilai unik
Akses By index ([0]) By key (['a']) Tidak langsung
Use Case Data berurutan Data berpasangan Koleksi unik

Kesimpulan

Ternyata tidak hanya menyimpan data satu saja seperti membuat varibel lalu di isi, dengan List, map dan set kita bisa menyimpan data lebih dari satu.

Selanjutnya kita akan membahas Pemrograman Berorientasi Objek (OOP) dalam Dart.


Faisal Mahadi
Mobile Apps Developer | Android Enthusiast | Keep Learning | Android Dev Serta Owner Hariankoding.com

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami