ArrayList
- Java kursu
- Başlangıç
- Ders 65/116
- 4 dk
ArrayList ile dinamik dizi öğrenirsin.
Dinamik dizi: ArrayList
Sabit uzunluklu int[] yerine uzunluğu otomatik büyüyen bir liste istiyorsan ArrayList kullanırısın. java.util.ArrayList sınıfı, eleman ekledikçe kendi kendine genişler.
ArrayList<String> names = new ArrayList<>();
names.add("Ayşe");
names.add("Mehmet");
// [Ayşe, Mehmet]Tür köşeli parantez içinde verilir: ArrayList<String>. Bu, yalnızca String ekleyebileceğini garanti eder. İlkel türlerin yerine sarmalayıcı (wrapper) sınıflar kullanılır: Integer, Double, Boolean.
ArrayList neden pratik?
Sabit uzunluklu dizilerde eleman eklemek için yeni dizi oluşturup eskiyi kopyalaman gerekir. ArrayList bunu senin yerine yapar; add, remove, size gibi hazır metotlar sunar.
ArrayList<Integer> nums = new ArrayList<>();
nums.add(10);
nums.add(20);
int first = nums.get(0);
// first = 10Listeyi yazdırmak için System.out.println(nums) yeter; toString metodu otomatik çağrılır ve köşeli parantezli bir çıktı üretir.
Uygulama Müşteri listesi kur
Bir ArrayList<String> oluştur, içine "Ayşe", "Mehmet" ve "Zeynep" ekle, sonra listeyi yazdır.
Başlangıç kodu
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
// ArrayList<String> oluştur
// Üç isim ekle
// Listeyi yazdır
}
}Örnek çözüm
ArrayList<String> names = new ArrayList<>();
names.add("Ayşe");
names.add("Mehmet");
names.add("Zeynep");
System.out.println(names);Beklenen çıktı
[Ayşe, Mehmet, Zeynep]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Boşluğu doldur: liste tanımla
ArrayList<String> names = new ArrayList____();
ArrayList<String> names = new ArrayList<>();
Açıklama: Elmas operatör <> türü sağ taraftan çıkarır.
2 Metot ve işlevi eşleştir
| Kavram | Anlamı |
|---|---|
add(x) |
Listeye eleman ekler |
get(i) |
İ indeksteki elemanı döner |
size() |
Eleman sayısını döner |
remove(i) |
İ indeksteki elemanı siler |
3 İlkel int değerini ArrayList'e eklemek için ne gerekir?
- Önce int[] dizisine çevirmek
- Integer sarmalayıcısını kullanmak Doğru cevap
- ArrayList<int> yazmak
- Listeyi static yapmak
Açıklama: Generics ilkel tür kabul etmez; Integer kullanılır.