Şimdi yükleniyor

Java’da liste içinde arama nasil yapilir?

Java’da liste içinde arama nasil yapilir?

Arkadaslar merhabalar.

Bu içerikte size kisaca liste içerisinde arama yapma islemini göstermeye çalisacagim. Öncelikle belirtmeliyim ki bu islemi birde fazla yöntem ile yapmaniz mümkün ancak ben Java diline Python’in ardindan geçis yaptigim için anlatacagim yöntem bana daha basit ve etkili gelmekte. Arama islemini yapmis oldugum örnek bir dosya ile göstermek istiyorum.

import java.util.Scanner;
public class PlakaFor {
    public static void main(String args[]){
        String illeri [] = new String[81];
        illeri[0]="Adana";
        illeri[1]="Adiyaman";
        illeri[2]="Afyon";
        illeri[3]="Agri";
        illeri[4]="Amasya";
        illeri[5]="Ankara";
        illeri[6]="Antalya";
        illeri[7]="Artvin";
        illeri[8]="Aydin";
        illeri[9]="Balikesir";
        illeri[10]="Bilecik";
        illeri[11]="Bingöl";
        illeri[12]="Bitlis";
        illeri[13]="Bolu";
        illeri[14]="Burdur";
        illeri[15]="Bursa";
        illeri[16]="Çanakkale";
        illeri[17]="Çankiri";
        illeri[18]="Çorum";
        illeri[19]="Denizli";
        illeri[20]="Diyarbakir";
        illeri[21]="Edirne";
        illeri[22]="Elazig";
        illeri[23]="Erzincan";
        illeri[24]="Erzurum";
        illeri[25]="Eskisehir";
        illeri[26]="Gaziantep";
        illeri[27]="Giresun";
        illeri[28]="Gümüshane";
        illeri[29]="Hakkari";
        illeri[30]="Hatay";
        illeri[31]="Isparta";
        illeri[32]="Içel";
        illeri[33]="Istanbul";
        illeri[34]="Izmir";
        illeri[35]="Kars";
        illeri[36]="Kastamonu";
        illeri[37]="Kayseri";
        illeri[38]="Kirklareli";
        illeri[39]="Kirsehir";
        illeri[40]="Kocaeli";
        illeri[41]="Konya";
        illeri[42]="Kütahya";
        illeri[43]="Malatya";
        illeri[44]="Manisa";
        illeri[45]="K.Maras";
        illeri[46]="Mardin";
        illeri[47]="Mugla";
        illeri[48]="Mus";
        illeri[49]="Nevsehir";
        illeri[50]="Nigde";
        illeri[51]="Ordu";
        illeri[52]="Rize";
        illeri[53]="Sakarya";
        illeri[54]="Samsun";
        illeri[55]="Siirt";
        illeri[56]="Sinop";
        illeri[57]="Sivas";
        illeri[58]="Tekirdag";
        illeri[59]="Tokat";
        illeri[60]="Trabzon";
        illeri[61]="Tunceli";
        illeri[62]="Sanliurfa";
        illeri[63]="Usak";
        illeri[64]="Van";
        illeri[65]="Yozgat";
        illeri[66]="Zonguldak";
        illeri[67]="Aksaray";
        illeri[68]="Bayburt";
        illeri[69]="Karaman";
        illeri[70]="Kirikkale";
        illeri[71]="Batman";
        illeri[72]="Sirnak";
        illeri[73]="Bartin";
        illeri[74]="Ardahan";
        illeri[75]="Igdir";
        illeri[76]="Yalova";
        illeri[77]="Karabük";
        illeri[78]="Kilis";
        illeri[79]="Osmaniye";
        illeri[80]="Düzce";
        while (true){
            System.out.println("Lütfen sorgulama istediginiz ilin plaka kodunu giriniz.");
            Scanner PlakaKontrol = new Scanner(System.in);
            int sorgu = PlakaKontrol.nextInt();
            for (int i = 0;i<illeri.length;i++){
                if (sorgu == i){
                    System.out.println("Sorguladiginiz plaka kodu "+illeri[sorgu-1]+" iline aittir...");
                }
            }
        }
    }
}

Yukaridaki örnekte kullanicidan alinan girdiye göre hangi plaka kodunun hangi ile ait oldugunu sonsuz bir döngü içerisinde sorgulayabiliyorsunuz.

illeri isimli listemizin içerisinde tek tek eklenmis illeri görebiliyorsunuz. Her ile ait bir liste indeksimiz mevcut.

Asagidaki kod blogunda ise kullanicidan plaka kodunu girmesini istedik.

System.out.println("Lütfen sorgulama istediginiz ilin plaka kodunu giriniz.");
Scanner PlakaKontrol = new Scanner(System.in);

Kullanicidan plaka kodunu aldigimiza ve PlakaKontrol isimli degiskenimize atadigimiza göre kullanicinin girdigi degere göre liste içerisinde arama islemine geçebiliriz.

Arama için for döngüsünü kullaniyoruz. Standart for döngüsü yapimizi kuruyoruz ve “i” degiskenini 0’a esitledik. Ardindan da “i” nin artacagi son degeri belirliyoruz. Bu degeri liste uzunlugumuza “illeri.length ” komutu ile esitledik ve i++ ile i degerini döngü her basa döndügünde 1 artacak sekilde ayarladik.

Su anda for döngüsü illeri.length uzunlugu kadar çalisacaktir. Bu uzunluk bu örnek için 81’dir. (Listeye eleman atarkan en son indeksin 0 olmasi liste indekinin 0’dan baslamasindan kaynaklanmaktadir. ) I degerimiz 81’e esit olana kadar for döngüsü çalisacaktir. Bu esnada “i” degerimiz kullanicidan aldigimiz degere esit oldugunda (sorgu degiskeni) içerideki if kosulu çalisir ve ekrana mesajimizi yazdirir. Eger i degeri sorgu ile isetlenemezse else blogu çalisir ve içerisindeki mesaji ekrana bastirir.

for (int i = 0;i<illeri.length;i++){
    if (sorgu == i){
        System.out.println("Sorguladiginiz plaka kodu "+illeri[sorgu-1]+" iline aittir…");
    }
    else:{
        System.out.println("Aradginiz plaka kodu geçerli bir kod degildir.");
    }
}

Anlatim biraz uzunca gibi duruyor arkadaslar ancak arama kismi aslinda toplamda 4 satir koddan olusuyor. Örnekle yapmamin sebebi daha anlasilir olmasini saglamakti. Umarim bunda da basarili olmusumdur.

Keyifli kodlamalar…

Paylaş :

Yorum gönder