Menu
CoddyTech

פרמטרים מיקומיים אופציונליים

חלק מהיחידה יסודות במסלול ה-Dart של Coddy. שיעור 72 מתוך 94.

פרמטרים מיקומיים אופציונליים ב-Dart מאפשרים לך ליצור פונקציות שבהן חלק מהפרמטרים הם אופציונליים. מגדירים אותם על ידי הצבת הפרמטרים בתוך סוגריים מרובעים [].

צרו פונקציה עם פרמטרים מיקומיים אופציונליים:

void greet(String name, [String? greeting]) {
  if (greeting != null) {
    print('$greeting, $name!');
  } else {
    print('Hello, $name!');
  }
}

void main() {
  greet('Dart');
  greet('Dart', 'Welcome');
}

לאחר הרצת הקוד שלמעלה, הפלט יהיה:

Hello, Dart!
Welcome, Dart!

אפשר להשתמש בכמה פרמטרים אופציונליים:

int calculateTotal(int quantity, [int price = 10, int tax = 2]) {
  return quantity * price + tax;
}

void main() {
  print(calculateTotal(5));
  print(calculateTotal(5, 20));
  print(calculateTotal(5, 20, 5));
}

לאחר הרצת הקוד שלמעלה, הפלט יהיה:

52
102
105
challenge icon

אתגר

מתחילים

באתגר הזה תתרגל שימוש בפרמטרים מיקומיים אופציונליים בפונקציות של Dart. פרמטרים מיקומיים אופציונליים מאפשרים לך ליצור פונקציות שחלק מהפרמטרים שלהן אופציונליים.

השלם את הפונקציה greet שלמטה. היא מקבלת פרמטר שם נדרש ופרמטר כותרת אופציונלי. אם הכותרת ניתנת, הפונקציה צריכה להחזיר ברכה הכוללת גם את הכותרת וגם את השם. אם לא ניתנת כותרת, עליה להשתמש בשם בלבד.

הפלט הצפוי:

Hello, John!
Hello, Dr. Smith!

נסו בעצמכם

void main() {
  // המשתנים האלה כבר הוגדרו עבורכם
  String person1 = "John";
  String person2 = "Smith";
  String title = "Dr.";
  
  // קראו לפונקציה greet עם השם בלבד
  print(greet(person1));
  
  // קראו לפונקציה greet עם השם ועם התואר
  print(greet(person2, title));
}

// TODO: השלימו את הפונקציה greet עם פרמטר title אופציונלי
// הפרמטר title צריך להיות אופציונלי (השתמשו בסוגריים מרובעים [])
String greet(String name) {
  // אם סופק title, החזירו "Hello, {title} {name}!"
  // אם לא סופק title, החזירו "Hello, {name}!"
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Dart אונליין