Java List

İki listi müqayisə edib birində olmayan elementi o biri listdən necə əlavə etmək olar? Məsələn mənim ray adlı listim var. Burada bütün rayonlar var. Bir də hesabat verən rayonların siyahısı olan başqa bir listim var. Mən istəyirəmki bu iki listi müqayisə edim, ray listindəki rayon 2 ci listdə yoxdursa onu 2 ci listə əlavə edim, elavə etdiyim rayonların digər qiymətlərinə default 0.0 verim. Belə bir kod yazmışam.

for (IRayon r : iRayons) {
                     for (Cedvel c : sut5) {
                            if (!r.getKod().contains(c.getKodarazi())) {
                                c.setKodarazi(r.getKod());
                                c.setSum(0.0);
                                sut5.add(c);
}
}

Amma istədiyim nəticəni vermir


Yadda saxlama
Kateqoriya: Java . . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (3 cavab var)

(14:14, 08/09/2011 ) #3739
 public static void main(String[] args) {
        List<Integer> list1=new ArrayList<Integer>();
        List<Integer> list2=new ArrayList<Integer>();

        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);

        list2.add(2);
        list2.add(3);
        list2.add(4);
        
        for (Integer i: list1){
            if (!list2.contains(i)){
               list2.add(i);
            }
        }
        for (Integer i: list2){
            System.out.println(i);
        }

    }

burda yazdığım istədiyim nəticəni verir.

for (IRayon r : iRayons) {
                        if (!sut1.contains(r.getKod())) {
                            for (Cedvel c : sut1) {
                                c.setKodarazi(r.getKod());
                                c.setSum(0.0);
                                sut1.add(c);
                            }
                        }
}

Bu kodda səhv verir

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(15:00, 08/09/2011 ) #3740

Kodu tam uyğunlaşdırdım oz koduma.

 public static void main(String[] args) {
        List<Object1> list1=new ArrayList<Object1>();
        List<Object1> list2=new ArrayList<Object1>();

        list1.add(new Object1("001" , 1));
        list1.add(new Object1("002" , 2));
        list1.add(new Object1("003" , 3));
        list1.add(new Object1("004" , 4));

        list2.add(new Object1("002" , 2));
        list2.add(new Object1("003" , 3));
        list2.add(new Object1("004" , 4));
        
        for (Object1 i: list1){
            if (!list2.contains(i.getKod())){
               list2.add(new Object1(i.getKod(), 0));
            }
        }
        for (Object1 i: list2){
            System.out.println(i.getKod()+" "+i.getSum());
        }

    }

002 2
003 3
004 4
001 0
002 0
003 0
004 0

belə bir nəticə çıxır. Yəni müqayisə etmir, 1 ci listi 2 ci listə əlavə edir, qiymətlərə 0 yazır.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(13:19, 18/09/2011 ) #3923

Səhv şərtin özündədir:

if (!list2.contains(i.getKod())){

list2 siyahısında Object1 sinifindən olan obyektlər var, “contains” metoduna obyektin özünü verib axtarmaq lazımdır, onun kodunu yox.

if (!list2.contains(i)){

Sizin Object1 sinifində “equals” və “hashCode” metodları override olunub?

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Jorpy cavab verdi - İnformatika muellimi yoxsa sistem administratorluğu? (6 saat əvvəl)

E. Hacı cavab verdi - Kriptovalyuta köçürmələrini VÖEN-ə bağlı bank kartına almağım vacibdir? (21 saat əvvəl)

Software Developer cavab verdi - Sifarişlərin çatdırılması üsulu (21 saat əvvəl)

Jorpy cavab verdi - Ödənişin təsdilənməsini necə öyrənə bilərəm? (1 gün əvvəl)

rdrobert cavab verdi - Ödənişin təsdilənməsini necə öyrənə bilərəm? (1 gün əvvəl)

rdrobert cavab verdi - canada ve america saytlarindan sifaris (1 gün əvvəl)

rdrobert cavab verdi - Sifarişlərin çatdırılması üsulu (1 gün əvvəl)

rdrobert cavab verdi - Kondisioner mis borusu qiyməti (1 gün əvvəl)

rdrobert cavab verdi - 0-dan alman dili öyrənmək (1 gün əvvəl)

E. Hacı cavab verdi - Trendyoldan 6 ədədd corab sifariş etsəm vergi ödəməliyəm? (4 gün əvvəl)

E. Hacı cavab verdi - Aliexpress endirim kodu tətbiq olunduqdan sonra Smart Customsda hansı qiymət yazılmalıdır? (4 gün əvvəl)

Jorpy cavab verdi - Aliexpress endirim kodu tətbiq olunduqdan sonra Smart Customsda hansı qiymət yazılmalıdır? (9 gün əvvəl)

E. Hacı cavab verdi - Smart Customsda növbəti sifarişlərə görə 25 manat tutulacaq? (9 gün əvvəl)

E. Hacı cavab verdi - Aliexpress endirim kodu tətbiq olunduqdan sonra Smart Customsda hansı qiymət yazılmalıdır? (9 gün əvvəl)

Jorpy cavab verdi - Poçta əlavə pul (10 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 607 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23249 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024