IOPanel

חזור   IOPanel > דבר חופשי > תוכנה ומערכות הפעלה > תיכנות
עמוד ראשי הירשם חיפוש הודעות מהיום סמן פורומים כנקראו

תיכנות פורום בנושאי תיכנות , פיתוח אתרים , שפות תיכנות , אפליקציות סלולר וטאבלטים.

תוכנה ומערכות הפעלה : תיכנות

עזרה דחופה מאוד בג'אווה, יום שני מבחן ואני חייב להצליח את זה!

חברים יש לי יום שני מבחן והמורה שלי אמר שזה ההכנה הטובה ביותר, אז מה שאני צריך לעשות זה לממש ...
תגובה
 
קישור חוזר הגדרות אשכול אפשרויות הצגת נושא
ישן 23-01-10, 22:52   #1 (קישור ישיר)
IO Addict
 
סמל האישי של ZipoX
 
תאריך הצטרפות: Sep 2007
הודעות: 3,046
שלח הודעה דרך MSN אל ZipoX
ברירת מחדל עזרה דחופה מאוד בג'אווה, יום שני מבחן ואני חייב להצליח את זה!

חברים יש לי יום שני מבחן והמורה שלי אמר שזה ההכנה הטובה ביותר, אז מה שאני צריך לעשות זה לממש את המחלקה "ספר טלפונים" (PhoneBook) מחדש, ע"י שימוש בשרשרת חוליות, במקום מערכים. מה שאני לא מצליח זה פעולת ההוספה.
הפעולה מוסיפה איש קשר ששמו name ומס' הטלפון שלו phone. אם איש הקשר כבר מופיע, הפעולה מעדכנת את מס' הטלפון שלו לערך phone.
אני אתן את כל המחלקה, ואדגיש את הפעולה עצמה, משום מה אחרי ניסיון הדפסה של זה, הוא מחזיר לי רק את השם הראשון
זה מה שניסיתי להדפיס
קוד:
public class test
{
    public static void main(String [] arg)
    {
        PhoneBook pb = new PhoneBook();
        pb.addContact("Galit Israel","03-9089730");
        pb.addContact("Avner Cohen","03-9089730");
        pb.addContact("Gerson Avraham","03-9089730");
        pb.addContact("Daniela Yariv","03-9089730");
        pb.addContact("Alice Marlo","03-9089730");
        pb.addContact("Bob Denver","03-9089730");
        pb.addContact("Galit Israel","02-9089730");
        String [] arr=pb.getAllContactsNames();
        for(int i=0;i<arr.length;i++)
            System.out.println(arr[i]);
    }
}
וזו התוכנית
קוד:
public class PhoneBook
{
    private Node <Contact> pb ;

    public PhoneBook()
    {
        this.pb=null;
    }

    public void addContact(String name, String phone)
    {
        Node<Contact> pos = this.pb;
        Node<Contact> pos2 = this.pb;
        if(this.pb==null)
        {
            Node <Contact> a = new Node <Contact> (new Contact(name,phone));
            this.pb=a;
        }
        else
        {
            if(this.pb.getInfo().getName().compareTo(name)==1)
            {
                Node <Contact> a = new Node <Contact>(new Contact(name,phone));
                a.setNext(this.pb);
                this.pb=a;
            }
            else
            {
                while(pos!=null)
                {
                    if(pos2.getInfo().getName().compareTo(name)==-1&&pos2.getNext().getInfo().getName().compareTo(phone)==1)
                    {
                        Node<Contact> b = new Node<Contact>(new Contact(name,phone));
                        b.setNext(pos2.getNext());
                        pos2.setNext(b);
                    }
                    else if(pos2.getInfo().getName().compareTo(name)==1)
                    {
                        Node<Contact> b = new Node<Contact>(new Contact(name,phone));
                        b.setNext(pos2);
                        pos.setNext(b);
                    }
                    else if(pos2.getInfo().getName().compareTo(name)==0)
                    {
                        pos2.getInfo().setPhone(phone);
                    }
                    pos=pos.getNext();
                    if(pos!=this.pb)
                        pos2=pos2.getNext();
                }
            }
        }
    }

     public void delContact(String name)
    {
        Node <Contact> pos=this.pb;
        Node <Contact> pos2=this.pb;
        Node <Contact> pos3 = this.pb.getNext();
        if(this.pb.getInfo().getName().equals(name)==true)
        {
            this.pb.setNext(pos3);
            pos.setNext(null);
        }
        else
        {
            while(pos!=null)
            {
                if(pos3.getInfo().getName().equals(name)==true)
                {
                    pos.setNext(pos3.getNext());
                    pos3.setNext(null);
                }
                else if(pos3!=null)
                {
                    if(pos!=this.pb)
                        pos2=pos2.getNext();
                   pos=pos.getNext();
                   pos2=pos2.getNext();
                }
                else if(pos3==null)
                {
                    if(pos.getInfo().getName().equals(name)==true)
                    {
                        pos2.setNext(null);
                        pos.setNext(null);
                    }
                    pos=pos.getNext();
                }
            }
        }
    }

     public String [] getAllContactsNames()
     {
         String str="";
         int counter=0;
         Node<Contact> pos = this.pb;
         while(pos!=null)
         {
             pos=pos.getNext();
             counter++;
         }
         String [] a = new String [counter];
         for(int i=0;i<counter;i++)
         {
             a[i]=this.pb.getInfo().getName();
         }
         return a;
     }

    @Override
    public String toString()
    {
        String str = "";
         if(this.pb==null)
             return null;
         else
         {
             Node<Contact> pos =this.pb;
             while(pos!=null)
             {
                 str=str+"\n"+pos.getInfo().getName()+","+pos.getInfo().getPhone()+" ";
                 pos=pos.getNext();
             }
         }
         return str;
    }

}
__________________
MAIN : E5200 | MUGEN II | DFI P35 T2L | OCZ Platimum 2X2G 800MHZ CL4 | CLUB3D HD4850 | ENERMAX LIBERTY 400W
HTPC : AMD Sampron 140 2.7GHZ@AMD ATHLON II 440X2 | GA MA785GM-US2H | Wintec AMPX 2G 800MHZ | O\B HD4200
ציטוט:
פורסם במקור על ידי raziel1981 צפה בהודעה
העולם הוא בית משוגעים, ואנחנו המחלקה שהכי טוב להיות בה בנסיבות הקיימות
ZipoX לא מחובר   הגב עם ציטוט
ישן 23-01-10, 23:01   #2 (קישור ישיר)
IO Pro
 
תאריך הצטרפות: Nov 2007
הודעות: 2,873
ברירת מחדל

לא קראתי את כל הקוד, אבל שלב ראשון זה לבדוק איפה בדיוק הקוד שלך לא מצליח. באילו מקרים?
נסה לבודד את הבעיה.

אני לא יודע מה זאת שרשרת חוליות, אבל מהקוד אני מבין שהכוונה היא לרשימה של שמות שממויינת לפי השם?
eddr666 לא מחובר   הגב עם ציטוט
ישן 23-01-10, 23:33   #3 (קישור ישיר)
IO Addict
 
סמל האישי של ZipoX
 
תאריך הצטרפות: Sep 2007
הודעות: 3,046
שלח הודעה דרך MSN אל ZipoX
ברירת מחדל

לא, שרשרת חוליות זה דרך ייצוג של אוסף. עזוב זה מסוך להסביר, ועוד אני לא משהו בנושא...את האיש הראשון הוא מצליח להוסיף, אבל אחריו, הוא פשוט לא מוסיף כלום...
__________________
MAIN : E5200 | MUGEN II | DFI P35 T2L | OCZ Platimum 2X2G 800MHZ CL4 | CLUB3D HD4850 | ENERMAX LIBERTY 400W
HTPC : AMD Sampron 140 2.7GHZ@AMD ATHLON II 440X2 | GA MA785GM-US2H | Wintec AMPX 2G 800MHZ | O\B HD4200
ציטוט:
פורסם במקור על ידי raziel1981 צפה בהודעה
העולם הוא בית משוגעים, ואנחנו המחלקה שהכי טוב להיות בה בנסיבות הקיימות
ZipoX לא מחובר   הגב עם ציטוט
ישן 24-01-10, 16:50   #4 (קישור ישיר)
IO Pro
 
סמל האישי של VanHalen
 
תאריך הצטרפות: Jun 2007
הודעות: 2,035
ברירת מחדל

מזה ה NODE הזה שאתה משתמש בו?
(אגב, ב IF הראשון שלך, הייתי אומר שמיותר ליצור אובייקט בשם A ואז להגיד שהשורש שלך שווה אליו. תיצור את השורש מההתחלה).

eddr666 אחי, אני חושב שהוא מתכוון לרשימה מקושרת.
__________________
משחק עכשיו: The Witcher II
שחקתי קודם: Dungeon Siege III, Divinity II - The Dragon Night Saga,Two Worlds II
Intel I5 3470| AC Freezer 7 | Asus P8Z77-V LX2 | Corsair XMS3 2x4GB 1600MHZ | Sapphire HD 7850 | Corsair Force 3 120GB| Topower Top 550W | TT Strike MX | LG L207WT | Microsoft Sidewinder X6 | Razer Naga
Sony Xperia Z1 Compact
Xiaomi MI-2 16GB - MIUI V5
מדריכים: תצוגת משאבי מערכת בזמן אמת תוך כדי משחק
VanHalen לא מחובר   הגב עם ציטוט
ישן 24-01-10, 17:10   #5 (קישור ישיר)
IO Addict
 
סמל האישי של ZipoX
 
תאריך הצטרפות: Sep 2007
הודעות: 3,046
שלח הודעה דרך MSN אל ZipoX
ברירת מחדל

נוד זו מחלקה של שרשרת מקושרת\שרשרת חוליות (אותו הדבר)....בכל מקרה מצאתי בעיות, אחזור במידה ואמצא עוד תקלות...
__________________
MAIN : E5200 | MUGEN II | DFI P35 T2L | OCZ Platimum 2X2G 800MHZ CL4 | CLUB3D HD4850 | ENERMAX LIBERTY 400W
HTPC : AMD Sampron 140 2.7GHZ@AMD ATHLON II 440X2 | GA MA785GM-US2H | Wintec AMPX 2G 800MHZ | O\B HD4200
ציטוט:
פורסם במקור על ידי raziel1981 צפה בהודעה
העולם הוא בית משוגעים, ואנחנו המחלקה שהכי טוב להיות בה בנסיבות הקיימות
ZipoX לא מחובר   הגב עם ציטוט
תגובה


הגדרות אשכול
אפשרויות הצגת נושא

חוקי משלוח הודעות
אתה לא יכול לשלוח הודעות חדשות
אתה לא יכול לשלוח תגובות
הינך לא יכול לצרף קבצים להודעותיך
אתה לא יכול לערוך את הודעותיך

vB code הינו פועל
סמיילים הינו פועל
קוד [IMG] הינו פועל
קוד HTML הינו כבוי
Trackbacksהינו פועל
Pingbacks הינו פועל
Refbacks הינו פועל

נושאים דומים
אשכול מפרסם האשכול פורום תגובות הודעה אחרונה
עזרה בג'אווה ZipoX תיכנות 2 29-11-09 18:19
עזרה כעיצוב תוכנה בג'אווה ZipoX תיכנות 23 22-11-09 14:45
שלום, אני מאוד חדש בקרור מיים ואני רוצה להתיעץ iNtro קירור מים 17 23-12-07 16:59
שאלה דחופה מאוד לגבי בחירת מסך 22'. קונה מחר..! mx-3 מסכים ותצוגה 0 09-08-07 21:23


כל הזמנים הם GMT +3. השעה כרגע היא 22:24.





מופעל על ידי: vBulletin
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO
IOPanel.net © כל הזכויות שמורות