Junior
List, Set ve Map arasındaki farkları ve bunların hangi durumlarda kullanılmaları gerektiğini anlatabilir misin?
sobes.tech yapay zeka
AI'dan gelen yanıt
List - tekrarlayan öğelere izin veren sıralı bir koleksiyondur. Öğeler indekse göre erişilebilir.
Set - sıralanmamış, benzersiz öğelerden oluşan bir koleksiyondur. Tekrarlara izin vermez.
Map - "anahtar-değer" çiftlerinden oluşan koleksiyon, burada her anahtar benzersizdir. Öğeler anahtar ile erişilebilir.
Karşılaştırma tablosu:
| Özellik | List | Set | Map |
|---|---|---|---|
| Sıralama | Evet | Hayır | Ekleme sırasına göre (her zaman değil) |
| Tekrarlama | İzin verilir | İzin verilmez | Anahtarlar benzersiz, değerler tekrar edebilir |
| Erişim | İndeks ile | Döngü ile | Anahtar ile |
- Kullanım:
List: Öğelerin sırası önemliyse ve tekrarlar gerekiyorsa (örneğin, alışveriş listesi, işlem geçmişi).Set: Benzersiz öğeler koleksiyonu gerekiyorsa ve sıralama önemli değilse (örneğin, benzersiz kullanıcıler, benzersiz etiketler listesi).Map: "anahtar-değer" çiftleri şeklinde veri saklamak ve hızlı erişim sağlamak için (örneğin, sözlük, uygulama ayarları).
Örnek:
// List
val shoppingList = listOf("elma", "muz", "elma")
println(shoppingList[0]) // elma
// Set
val uniqueFruits = setOf("elma", "muz", "elma")
println(uniqueFruits.size) // 2 (elma sadece bir kez var)
// Map
val userAges = mapOf("Alice" to 30, "Bob" to 25)
println(userAges["Alice"]) // 30