Ana içeriğe geç
Modül 6 · Ders 1 ders 2Kurstaki 11/14~15 min
Modül dersleri (1/2)

Ayarla ve Haritala

Java Collections Framework, ArrayList sınıfının (öğelerin sıralı bir listesini temsil eden) ötesinde iki temel arabirim daha sunar: Set (benzersiz öğeler için) ve Map (anahtar-değer ilişkileri için).

Set: Benzersiz Unsurlardan Oluşan Koleksiyonlar

Set, yinelenen öğeler içeremeyen bir koleksiyondur. En yaygın uygulaması, dahili olarak bir karma tablosuna dayalı olan HashSet'dir; bu, ekleme, kaldırma ve varlık doğrulama işlemleri için mükemmel performansı garanti eder.

Java
import java.util.HashSet;
import java.util.Set;

Set<String> uniqueNames = new HashSet<>();
uniqueNames.add("Alice");
uniqueNames.add("Bob");
uniqueNames.add("Alice"); // This insertion will be ignored since "Alice" is already present

System.out.println(uniqueNames.size()); // Prints 2

Harita: Anahtar-Değer İlişkilendirmeleri

Bir Map benzersiz anahtarları değerlere eşler. Yinelenen anahtarlar içeremez: her anahtar en fazla bir değerle ilişkilendirilir. Standart uygulaması HashMap şeklindedir.

Java
import java.util.HashMap;
import java.util.Map;

Map<String, Integer> ageMap = new HashMap<>();
// Insert or update key-value pairs
ageMap.put("Alice", 25);
ageMap.put("Bob", 30);

// Retrieve value by key
int aliceAge = ageMap.get("Alice"); // Returns 25

// Verify if a key or value exists
boolean hasBob = ageMap.containsKey("Bob"); // Returns true

Bir Harita Üzerinde Yineleme

Anahtar/değer çiftleri üzerinde yineleme yapmak için, harita tarafından sağlanan giriş kümesinde (entrySet()) bir for-each döngüsü kullanabiliriz.

Java
for (Map.Entry<String, Integer> entry : ageMap.entrySet()) {
    System.out.println(entry.getKey() + " is " + entry.getValue() + " years old.");
}

Kendin dene

Egzersiz#java.m6.l1.e1
Denemeler: 0Yükleniyor…

Öğeler adlı bir HashSet dizesi bildirerek kodu tamamlayın. 'Elma', 'muz' ve 'elma' öğelerini tekrar ekleyin, ardından System.out.println'i kullanarak kümenin boyutunu yazdırın.

Düzenleyici yükleniyor…
İpucu göster

Bir `Set`te kopyalara izin verilmediğini ve `items.size()`nın eklenen benzersiz öğelerin gerçek sayısını döndüreceğini unutmayın.

3 denemeden sonra çözüm mevcut

Egzersiz#java.m6.l1.e2
Denemeler: 0Yükleniyor…

Dize anahtarları ve Tamsayı değerleriyle yaşlar adlı bir HashMap bildirerek kodu tamamlayın. 'Alice' anahtarını 25 ile ve 'Bob' anahtarını 30 ile ilişkilendirin, ardından Bob'un yaşını alıp yazdırın.

Düzenleyici yükleniyor…
İpucu göster

Çiftleri eklemek için 'put' yöntemini ve anahtarlara dayalı değerleri almak için 'get' yöntemini kullanın.

3 denemeden sonra çözüm mevcut

Egzersiz#java.m6.l1.e3
Denemeler: 0Yükleniyor…

Ülke haritasının 'FR' anahtarını içerip içermediğini kontrol ederek kodu tamamlayın ve boole sonucunu yazdırın.

Düzenleyici yükleniyor…
İpucu göster

Gerekli anahtarın varlığını kontrol etmek için "ülkeler" nesnesindeki "containsKey" yöntemini kullanın.

3 denemeden sonra çözüm mevcut