Java'da dolaşmak
tags adında bir ArrayList<String> oluşturun, oak sonra pine ekleyin ve listeyi for (String t : tags) ile dolaşıp her kelimeyi yazdırın. Lane.java dosyasını derleyin ve java Lane çalıştırın. Ekran iki satır göstermelidir: oak, sonra pine. Döngünün her geçişi bir değer yazar. Koleksiyondaki her değeri dolaşmak bu sayfanın öğrettiği şeydir.
Her değeri bir kez dolaşın
HashSet sayfasında döngü olmadan size ve contains kontrol ediyordunuz. Kursta daha önceki for-each sayfasında sabit bir diziyi dolaşıyordunuz. Bu sayfa aynı for-each biçimiyle bir ArrayList dolaşır, sonra get ile indeksli bir dolaşım gösterir. Koleksiyon önce add ile büyür. Döngü değerler saklandıktan sonra gelir.
Lane.java dosyasını açın. Public sınıf adını Lane tutun ki dosya adıyla eşleşsin. Kalan HashSet, contains, Bin, Desk ve map put/get demolarını silin. Herhangi bir Scanner veya nextLine de silin. Program yazı beklememelidir.
Üste yakın, public class Lane üstüne yazın:
import java.util.ArrayList;
main içinde listeyi oluşturun ve iki kelime ekleyin:
ArrayList<String> tags = new ArrayList<String>();
tags.add("oak");
tags.add("pine");
Sonra for-each başlığını ve gövdesini yazın:
for (String t : tags) { System.out.println(t); }
İki nokta, öğe tipi-ve-adı ile koleksiyon arasında durur. Her geçiş t yi sonraki kelimeye koyar. İlk demoda sayaç yazmayın. Derlemeden önce kaydedin.
import java.util.ArrayList;
public class Lane {
public static void main(String[] args) {
ArrayList<String> tags = new ArrayList<String>();
tags.add("oak");
tags.add("pine");
for (String t : tags) {
System.out.println(t);
}
}
}
Lane.java yi tutan klasörden javac Lane.java çalıştırın. Parantezler, süslü parantezler, açısal parantezler, iki noktalar ve noktalı virgüller uyuşunca javac kendi satırını yazmaz. Sonra java Lane çalıştırın — java Lane.java değil, java ArrayList değil. Çalıştırma komutundan .java sonunu çıkarın.
Program iki satır yazıp durmalıdır: oak, sonra pine. Yazmanızı istememelidir. Terminal klavye girişi bekliyorsa, eski bir alıştırmadan kalan bir nextLine çağrısı hâlâ bir dosyadadır. O çağrıyı silin; oluşturmayı, iki add satırını ve for-each i tutun.
Çalıştırmayı bir kez dolaşın. Java Lane.main den başlar. Liste oak sonra pine tutar. İlk geçiş t yi oak e koyar ve oak yazar. İkinci geçiş t yi pine e koyar ve pine yazar. Sonra döngü biter. Başka bir şey yazılmamalıdır. Yalnızca 2 görürseniz, değerleri dolaşmak yerine size() yazdırmışsınızdır. Tek satır [oak, pine] görürseniz, her öğe yerine tüm liste nesnesini yazdırmışsınızdır — for-each gövdesini println(t) tutun. true veya leaf görürseniz, hâlâ bir Bin veya Desk demosu çalışıyordur — java Lane e geçin.
javac ArrayList bulamadığını söylerse, import eksiktir veya sınıf satırından sonradır. import java.util.ArrayList; ifadesini public class Lane üstüne taşıyın. for (String t : tags) ifadesini süslü parantezsiz yazıp sonra birden fazla gövde satırı olursa, bu sayfada gövdeyi süslü parantez içinde tek bir println tutun ki biçim net kalsın. İki noktadan sonraki koleksiyon adının yazımı oluşturduğunuz listeyle eşleşmelidir: tags, dizi for-each sayfasından kalan slots adı değil.
get ile indeksli dolaşım
İkinci bir demo aynı listeyi sayılı bir for ve get ile dolaşır. for-each yolunun yanında yuva numarası yolunu görürsünüz.
import java.util.ArrayList;
public class Lane {
public static void main(String[] args) {
ArrayList<String> tags = new ArrayList<String>();
tags.add("oak");
tags.add("pine");
for (int i = 0; i < tags.size(); i++) {
System.out.println(tags.get(i));
}
}
}
Aynı şekilde derleyip çalıştırın. Ekran yine oak, sonra pine gösterir. Başlık i yi 0 dan kullanır, i < tags.size() olduğu sürece. Her gövde çağrısı tags.get(i) bir yuvayı okur. Bu, list-methods alışkanlığı get in döngü içidir. Ekranda indeks numarasına ihtiyacınız yoksa ilk öğretim yolu olarak for-each dosyasını tercih edin. Bu liste için her iki dolaşımın da aynı iki satırı yazdığını kanıtlamak için indeksli dosyayı tutun. Yanlışlıkla i yi 1 den başlatırsanız, ilk yazılan kelime pine olur ve oak atlanır — tam dolaşım için i yi 0 da tutun.
Bu sayfanın quiz ekranı için HashSet yazdırma sırasına güvenmeyin. Setler oak in pine den önce olacağını vaat etmez. ArrayList demoları beklediğiniz iki satır için kararlı sıra tutar. Quiz ekranı öngörülebilir kalsın diye öğretim dosyalarında ArrayList ile kalın.
Yalnızca size bir dolaşım değildir
Üçüncü bir dosya yalnızca sayıyı yazdırma alışkanlığını gösterir. HashSet sayfasında yararlıydı ama iterating değildir.
import java.util.ArrayList;
public class Lane {
public static void main(String[] args) {
ArrayList<String> tags = new ArrayList<String>();
tags.add("oak");
tags.add("pine");
System.out.println(tags.size());
}
}
O dosya 2 yazar — bir sayı, kelimeler değil. Yalnızca karşıtlık olarak kullanın. Iterating dersinin tutulan dosyaları her değeri for-each veya indeksli get ile yazar. İki satırlık ekran için yalnızca-size dosyasını quiz yolu olarak göndermeyin.
Dizilerde for-each ve HashSet kontrolleriyle karşılaştırma
Daha önce for-each int[] veya String[] yuvalarını dolaşırdı. Burada iki nokta hâlâ çalışır, ama sağdaki ad bir ArrayList tir. HashSet sayfasında size ve contains her değeri yazmadan yanıt verirdi. Bu sayfa her değeri yazar. Kalan bir Bin contains demosu başka bir derstir. Bu sayfa için Lane i oak sonra pine yazan for-each ile tutun.
Eski Bin.java dosyaları hâlâ yakındaysa, hangi sınıfı çalıştırdığınızı karıştırmıyorsa bırakın veya yalnızca karıştırıyorsa silin. Bu dersin dolaşım dosyasını derledikten sonra java Lane çalıştırın.
Wrappers için ne kalır
Bu sayfa koleksiyon değerlerini dolaşır. Sonraki sayfa, koleksiyonlar nesne istediğinde ilkel int yanındaki Integer gibi wrapper türlerini kapsar. Burada ArrayList üzerinde for-each ve indeksli get ile kalın. Bu sayfada wrapper demolarını zorunluluk olarak uydurmayın.
Wrappers öncesi
java.util.ArrayList import edebilir, oak ve pine ekleyebilir ve her kelimeyi for (String t : tags) ile yazdırabilirsiniz. Ayrıca for (int i = 0; i < tags.size(); i++) ve tags.get(i) ile dolaşabilirsiniz. Lane.java derleyin ve java Lane çalıştırın. Ekran oak sonra pine gösterir. Sonraki sayfa wrappers tır; koleksiyon saklama için nesne türleri ilkellerin yanında durur.
Import u tutun. Döngüden önce iki add i tutun. for-each i ilk öğretim dolaşımı olarak tutun. Bu alışkanlıklar ilerlemadan önceki kontrol noktasıdır. for-each ten sonra her iki satır yazıldığında, iterating bu dersin işini yapmıştır ve sonraki konu için hazırsınız.
🧠 Bilginizi Test Edin
Bilginizi Test Edin
Bu interaktif sınavla kendini test et ve konuyu ne kadar iyi anladığını gör
📝 Talimatlar
- Her soruyu dikkatle okuyun
- Her soru için en iyi cevabı seçin
- Quiz'i istediğiniz kadar tekrar alabilirsiniz
- İlerlemeniz üstte gösterilecek