מערכים מטיפוס מוגדר
חלק מהיחידה מבוא ל-Luau במסלול ה-Lua של Coddy. שיעור 13 מתוך 73.
מערכים מטיפוס מוגדר הם אחת התכונות השימושיות ביותר של Luau לארגון ערכים מרובים תוך שמירה על בטיחות טיפוסים.
ב-Lua, מערך הוא פשוט טבלה עם ערכים במיקומים 1, 2, 3, …, והוא יכול להכיל בקלות מספר, מחרוזת וערך בוליאני בו-זמנית. Luau מאפשרת לך להצהיר שטבלה צריכה להכיל רק איברים מסוג אחד, באמצעות התחביר {Type}:
local numbers: {number} = {1, 2, 3, 4, 5}
local names: {string} = {"Alice", "Bob", "Charlie"}
local flags: {boolean} = {true, false, true}כשאתה מצהיר על מערך מטיפוס מוגדר, בודק הטיפוסים של Luau מוודא שרק ערכים מהטיפוס שהוצהר ייכללו בו. אם תכניס מחרוזת למערך {number}, תקבל שגיאת טיפוסים בזמן העריכה, עוד לפני שהקוד יופעל:
local scores: {number} = {85, 90, 78}
table.insert(scores, "oops") -- ✗ שגיאת טיפוס: string אינו מספרכל מה שאתה כבר יודע על טבלאות Lua עדיין תקף: מערכים מתחילים באינדקס 1 (scores[1] הוא האיבר הראשון), #scores הוא האורך, ו-table.insert / table.remove פועלות כרגיל. ההערה מוסיפה בטיחות, ולא התנהגות חדשה בזמן ריצה.
אתגר
קלצרו מערך מטיפוס מוגדר בשם scores שיכול להכיל מספרים בלבד, מאותחל עם 85, 92 ו-78.
צרו מערך מטיפוס מוגדר שני בשם studentNames שיכול להכיל מחרוזות בלבד, מאותחל עם "Alice", "Bob" ו-"Charlie".
לאחר מכן הדפיסו, כל אחד בשורה משלו:
- הציון הראשון
- כמה ציונים יש (השתמשו ב-
#) - שם התלמיד השני
נסו בעצמכם
-- כתבו כאן קוד
-- 1) הכריזו על scores: {number} ועל studentNames: {string}
-- 2) הדפיסו את הציון הראשון, את מספר האיברים ב-scores ואת השם השני
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה מבוא ל-Luau
1תחילת העבודה עם Luau
מהו Luau?למה להשתמש ב-Luau?קוד Luau הראשון שלכםבדיקת טיפוסים ומצבי שגיאהסיכום: מבוא ל-Luau4עבודה עם פונקציות
הגדרת טיפוסים לפרמטרים ולערכי החזרההגדרת טיפוסים לפונקציות אנונימיותפונקציות שאינן מחזירות ערךפרמטרים אופציונלייםערכי ברירת מחדל לפרמטריםפונקציות עם מספר משתנה של ארגומנטיםהגדרת טיפוסי פונקציותסיכום: פונקציות עם טיפוסים2טיפוסי ליבה
טיפוסים בסיסיים: num, str, boolהטיפוס 'any': פתרון מילוטהטיפוס 'unknown'טיפוסי Nil ואופציונלייםהסקת טיפוסים בפעולההצהרות טיפוסים מפורשותסיכום: תרגול טיפוסי ליבה5כינויים, איחודים וחיתוכים
כינויים לסוגים פרימיטיבייםטיפוסי איחודעבודה עם טיפוסי איחודטיפוסים ליטרלייםטיפוסי חיתוךשילוב כינויים לסוגיםסיכום: שילובים מתקדמים של טיפוסים3טבלאות מטיפוס מוגדר: מערכים ומפות
מערכים מטיפוס מוגדרהוספת איברים וקריאתםמהו טיפוס Map?הצהרה על מפות וגישה אליהןמעבר על טבלאותטבלאות בעלות מבנים מעורביםמערכים רב־ממדיים מטיפוס מוגדרtable.unpack ו־Varargsסיכום: מערכים ומפותתרגלו בעצמכם: קומפיילר Luau אונליין