for (var ogrenci= 0; ogrenci < ogrenciListesi.length; ogrenci++) {
                          for (var id = 0; id < digerIDListesi.length; id++) {
                           if ogrenciListesi[ogrenci].ogrID == digerIDListesi[id]) {
                            if(ogrenciListesi[ogrenci].cinsiyet == "E"){
                              {Erkek için yapılacaklar}
                            }else{
                              {Kız için yapılacaklar}
                            }
                           }
                          }
                        }

Yukarıda iki listeyi karşılaştırmaya çalıştım fakat mantık hatası yapıyorum sanırım. Çalıştıramadım. Db’den gelen bir öğrenci listem var. Program içinde de bir ID listem var. Programdaki ID listesi içindeki ID ile DBden gelen ID listesindeki ID birbirine eşit ise o IDye ait öğrenci cinsiyetini elde edip programa yön vermek istiyorum fakat iki blokta (Erkek-Kız) ardarda çalışıyor.

MrBean MAntık doğru gibi.
Nerde hata alıyorsunuz ?
ayrıca neden bu işlemi sql ile yapmayı tercih etmediniz ?

    @Flutter

    Kusura bakmayın kafa karışıklığı yaşamışım resmen. Gündüz gözü ile bakınca yaptığım hatayı fark ettim. Amacım listede “E” veya “K” değerini barındıran IDleri elde etmekti. Aşağıdaki şekilde yeniden düzenledim. Eksik bırakmışım maalesef 🙂
    Sql ile de yapılır tabiki hatta tam sql sorgusu yazmaya hazırlanıyordum aslında. Döngülerde ısrarcı olma sebebim ise basit bir algoritmanın niye çalışmıyor olması idi 🙂🙂

    bool durum;
    for (var ogrenci= 0; ogrenci < ogrenciListesi.length; ogrenci++) {
                              for (var id = 0; id < digerIDListesi.length; id++) {
                               if ogrenciListesi[ogrenci].ogrID == digerIDListesi[id]) {
                                if(ogrenciListesi[ogrenci].cinsiyet == "E"){
                                  durum = true;
                                }else{
                                  durum = false;
                                }
                               }
                              }
                            }
                            durum ? {Erkek için yapılacaklar} : {Kız için yapılacaklar}

    MrBean if ogrenciListesi[ogrenci].ogrID == digerIDListesi[id])

    Hocam diyelim ki 100 kayıt öğrenci, 100 kayıt id var.
    Bu yaptığınız döngü toplmada 10.000 kez çalışacak. Yani 1 numarası için 100 kere 2 için 100 kere vs.
    ondan sql sorgusu daha iyi 🙂

    Flutter
    Hocam evet 100 kayıt öğrenci veri tabanında var diyelim ve onların IDlerini SQL sorgusu ile bir listeye attım. digerIDListesi veritabanında değil program içinde oluşuyor. Sorgudan gelen liste ile bu listeyi karşılaştırmak için yine döngü kullanmak gerekmiyor mu? Toplam öğrenci sayısı kadar değil de sorgu içinde gelen liste sayısı kadar dönmüş olacak.

    Write a Reply...