בעייה עם מערך דו-מימדי ב-Java

Metheny

Member
בעייה עם מערך דו-מימדי ב-Java

הצהרתי על מערך דו-מימדי ואח"כ ניסיתי להקצות את המערך הראשי, בצורה הבאה:
String[][] arr = null ; int num = .... ; .... arr = new String[] [num] ; // problematic​
מהי הדרך הנכונה לבצע את השורה הבעייתית? תודה.
 

voguemaster

New member
נסה את זה:

String[][] arr = new String[n][]; // create n references to String[] for(int i=0 ; i < n ; i++) arr = new String[m]; // create an array of m string refs

מה שקורה פה הוא: 1. מצהירים על מערך דו מימדי של רפרנסים למחרוזות. 2. מייצרים ע"י new אובייקט מערך דו מימדי שמכיל n רפרנסים למערכים של מחרוזות. 3. רצים בלולאה ומקצים n פעמים אובייקטי מערך של String עבור כל רפרנס. כל אובייקט מערך מכיל m רפרנסים למחרוזת. הבעיה שלך הייתה שלא איתחלת את המימד הנכון.
 

Metheny

Member
כן, צודק...

פשוט חשבתי שזה מתייחס ל-
String[]​
בתור סוג של אובייקט. תודה רבה!
 
למעלה