Java/מערכים: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
תגיות: עריכה ממכשיר נייד עריכה דרך האתר הנייד
אין תקציר עריכה
תגיות: עריכה ממכשיר נייד עריכה דרך האתר הנייד
שורה 1:
מנור המלך
 
מנור הגבר
==שימוש במערך==
בג'אווה, מערכים הם '''אובייקטים''' (עצמים), והיחס אליהם הוא בהתאם. על המושג "אובייקט" בג'אווה נלמד בהמשך בהרחבה, אך בשלב זה נסתפק בהסבר על צורת השימוש, ללא הבנה מעמיקה יותר. כמו בזמן יצירת אובייקט, גם על מערך יש להכריז ולהשתמש בבנאי. בנייה של מערך מסוג int תיראה כך:
{{קוד|<nowiki>int[] arr = new int[size];</nowiki>}}
כאשר במקום המילה size נרשום את גודל המערך הרצוי, כלומר - כמה תאים אנחנו רוצים שיהיו במערך. ישנה דרך נוספת ליצור מערך: בשלב ההכרזה (ובשלב זה בלבד!), אפשר לכתוב, בתוך סוגריים מסולסלים, אילו איברים יהיו במערך - הגודל יחושב בצורה אוטומטית על ידי המחשב. בניית מערך מסוג String בצורה כזו תיראה כך: {{קוד|<source lang = "java">String[] arr = {"This", "Is", "My", "Array"};</source>}}
הגישה לתאי המערך נעשית באמצעות שם המערך, והמספר הסידורי של התא - בתוך סוגריים מרובעים. אם כך, בהנחה שהכרזנו על מערך מסויים בשם arr, התא הראשון ייקרא {{קוד בשורה|arr[0]}}, התא השני - {{קוד בשורה|arr[1]}}, וכן הלאה.
 
===תכונות המערך בג'אווה===
[[תמונה:Array1.svg|left|thumb|250px|הדמיה של מערך בגודל 10: תאי זיכרון שמספרם 0 עד 9 מסודרים בשורה]]
* מספרי התאים במערך מתחילים מ-0, ונגמרים בתא שמספרו הסידורי הוא כגודל המערך פחות אחד. לדוגמה - אם יצרנו מערך בגודל 5, מספרי התאים הזמינים הם 0, 1, 2, 3, 4. תא מספר 5 לא קיים. זוהי תכונה שקיימת בשפות תכנות אחרות רבות.
* גישה לתא שאינו קיים תגרום לשגיאת זמן ריצה - התוכנית תעבור הידור, אך תקרוס באמצע הריצה - תוצאה בלתי רצוייה בעליל. לכן, יש לנהוג בזהירות עם הגישה למספרי התאים, ולזכור תמיד את צורת המספור כפי שתוארה בסעיף הקודם.
* לא ניתן לשנות גודל של מערך לאחר ההכרזה עליו - מספר התאים המירבי נשאר קבוע. מבני נתונים אחרים מאפשרים להתמודד עם בעייה זו.
* סוג המשתנים שבמערך הוא יחיד - לא ניתן לערבב משתנים מסוגים שונים במערך אחד (הערה: על ידי שימוש ב[[w:he:פולימורפיזם (תוכנה)|פולימורפיזם]], ערבוב מסויים ייתכן, אך זהו נושא שעדיין רחוק).
* לאחר יצירת המערך, הערכים שבתאי המערך יקבלו ערך ברירת מחדל - במקרה של int, למשל, כל איברי המערך יהיו 0, מערך double יכיל 0.0, מערך String יכיל null,מערך בוליאני (boolean) יכיל false וכן הלאה.
 
==מערכים ולולאות==