פורסם 2012 בינואר 213 שנים לא ברור בכלל מה אתה רוצה.תאר באילו מחלקות מדובר, מה האובייקטים ומה אתה מנסה לעשות.
פורסם 2012 בינואר 1213 שנים אפשר להשתמש בcomparatorגם בליסט? לא רק בPRIORITYQUEUE?או שאפשר בכל מבנה נתונים?
פורסם 2012 בינואר 1213 שנים אפשר להשתמש ב-Comparator בכל פונקציה שמקבלת Comparator.יש מבני נתונים שהם ממויינים מעצם הגדרתם - לדוגמה, PriorityQueue ו-TreeMap, ולכן הם צריכים דרך להשוות בין כל שני איברים שלהם. לכן הם צריכים לקבל Comparator, או איברים שמממשים את הממשק Comparable.מבנה כמו List, לדוגמה, הוא לא ממוין באופן טבעי (הוא יכול להחזיק איברים באיזה סדר שאתה רוצה) ולכן הוא לא דורש שהאובייקטים יהיו ברי-השוואה. אבל, יש פונקציות מסויימות שכן דורשות שהם יהיו ברי-השוואה - לדוגמה, אם תרצה למיין את הרשימה באמצעות הפונקציה Collections.sort אז תצטרך להיות מסוגל להשוות בין איברים.
פורסם 2012 בינואר 1213 שנים אפשר להשתמש ב-comparator בכל פונקציה שמקבלת comparator.למה הכוונה?אני יודע שבתור עדיפויות, הפעולה מוציאה איבר לפי מה שכתבתי בקומפטטור.יש לזה עוד שימושים? או שאותו שימוש, רק על מבני נתונים אחרים?
פורסם 2012 בינואר 1213 שנים ערכתי את ההודעה כך שתהיה יותר ברורה.אפשר להשתמש בקומפרטור להוציא איבר לפי פונקציה, כמו בתור עדיפויות?אם כן, איך עושים את זה?לפי מה שזכור לי, בתור העדיפויות הפונקציה שמוציאה את האיבר דורשת קומפרטור, זה לא שכתבתי את הפונקציה בעצמי.
פורסם 2012 בינואר 1213 שנים אתה בסה"כ צריך לממש את הממשק comparator כלומר את שני המתודות equals ו-compare. אתה יכול להגדיר את המותודות הללו איך שבא לך (לא באופן שרירותי אלא באופן שאתה רוצה להגדיר יחס סדר במחלקה שלך)
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.