الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اختبر قدراتك في الجافا - الحلقة الحادية عشر

مغلق
بدأه Snack3r في 22 ديسمبر 2013 · 2 رد · 749 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

 

 

فهرس الحلقات.

 

الهدف من هذه الحلقة هو استخراج مجموعة بيانات اعتماداً على الـ HashMap.

لتكن لدينا الفئة Produit و التي تحتوي على رقم المنتج, اسمه و الكمية المتوفرة منه :

class Produit {

    private String idProduit, libelle, quantite;

    public Produit(String id, String libel, String qnt) {
        ...
    }
}

نفترض أن الفئة Produit تحتوي على getters لكل من رقم المنتج و الكمية.

قم بكتابة فئة جديدة باسم chercherProduits تحتوي على دالة chercher تأخذ كوسيط كائن HashMap يُخزن مجموعة المنتجات و تُعيد كائناً من ArrayList يحتوي على المنتجات التي كميتها أكبر من 1500.

 

 

بالتوفيق.

#2

التصحيح :

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;

public class chercherProduits {

    private ArrayList<Produit> chercher(HashMap<String, Produit> prod) {
        Collection c = prod.values();
        ArrayList<Produit> array = new ArrayList<Produit>();
        Iterator<Produit> iter = c.iterator();
        while (iter.hasNext()) {
            Produit p = iter.next();
            if (Integer.parseInt(p.getQnt()) > 1500) {
                array.add(p);
            }
        }
        return array;
    }

    public static void main(String args[]) {
        Produit p1 = new Produit("09", "Lib1", "1300");
        Produit p2 = new Produit("20", "Lib2", "1900");
        Produit p3 = new Produit("89", "Lib3", "2300");
        Produit p4 = new Produit("19", "Lib4", "300");
        Produit p5 = new Produit("85", "Lib5", "1100");
        Produit p6 = new Produit("41", "Lib6", "9000");
        Produit p7 = new Produit("52", "Lib7", "10");

        HashMap<String, Produit> prod = new HashMap<String, Produit>();
        prod.put(p1.getId(), p1);
        prod.put(p2.getId(), p2);
        prod.put(p3.getId(), p3);
        prod.put(p4.getId(), p4);
        prod.put(p5.getId(), p5);
        prod.put(p6.getId(), p6);
        prod.put(p7.getId(), p7);

        ArrayList<Produit> test = new chercherProduits().chercher(prod);
        Iterator<Produit> iter = test.iterator();
        while (iter.hasNext()) {
            System.out.println("ID : " + iter.next().getId());
        }
    }
}

class Produit {

    private String idProduit, libelle, quantite;

    public Produit(String id, String libel, String qnt) {
        idProduit = id;
        libelle = libel;
        quantite = qnt;
    }

    public String getId() {
        return idProduit;
    }

    public String getQnt() {
        return quantite;
    }
}
#3

السلام عليكم

يمكن أيضا كتابة الدالة (...)Recherche بالشكل التالي :

 private ArrayList<Produit> chercher(HashMap<String, Produit> prod) {                   ArrayList<Produit> array = new ArrayList<Produit>();          Object []list=prod.values().toArray();        for(int i=0;i<list.length;i++)           {              Produit p = (Produit) list;            if (Integer.parseInt(p.getQnt()) > 1500) {                array.add(p);            }           }                 return array;    }

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…