הצהרות מותנות מאפשרות לך לבצע החלטות המבוססות על היגיון שמעריך נכון או לא נכון. כמה דוגמאות להצהרות מותנות כוללות הצהרות if, if…else, if…else if.. אחר, והצהרות של חילופי מקרים. ל-Go יש תמיכה מלאה בתנאים אלה עם תחביר מוכר ופשוט.

תחילת העבודה עם גולנג

כדי לעקוב אחר הדרכה זו, להתקין Go בסביבה המקומית שלך אם עדיין לא עשית זאת. אתה יכול גם לבדוק את קטעי הקוד במאמר זה באמצעות ה לך למגרש משחקים.

אם הצהרה

ה אם המשפט מבצע גוש קוד רק אם מתקיים תנאי מסוים. הנה התחביר:

אם תנאי {
// בלוק קוד
}

הנה דוגמה שמדפיסה "Pass" אם הערך של משתנה הסימנים הוא יותר מ-50:

ציונים := 60

אם סימנים > 50 {
fmt. Println("לַעֲבוֹר")
}

אתה יכול גם להכריז על משתנה הסימנים במשפט if כך:

אם סימנים := 60; סימנים > 50 {
fmt. Println("לַעֲבוֹר")
}

בעת שילוב תנאים, Go מאפשר לך להשתמש אופרטורים לוגיים המוכרים משפות אחרות כמו AND(&&), OR (||), ו- NOT(!).

האופרטור AND מחזיר אמת רק אם הערך מימין ומשמאל שלו נכונים:

שמש := נָכוֹן
noClass := נָכוֹן

אם שטוף שמש && אין שיעור {
fmt. Println("לך לחוף")
}

האופרטור OR מחזיר אמת אם אחד מהערכים מימין או שמאל נכון:

instagram viewer
היום := "יוֹם רִאשׁוֹן"

אם היום == "יוֹם רִאשׁוֹן" || היום == "יום שבת" {
fmt. Println("לישון ב")
}

האופרטור NOT מחזיר true רק אם הערך הוא false:

סימנים := נָכוֹן

אם !מסמנים {
fmt. Println("אין סימנים זמינים!")
}

אם...הצהרה אחרת

ה אחרת הצהרה מבצעת את הקוד המתאים, תלוי אם התנאי מתקיים.

אם תנאי {
// מופעל אם התנאי מתקיים
} אַחֵר {
// מופעל אם התנאי אינו מתקיים
}

בדוגמה למטה, התוכנית מדפיסה 'עובר' אם ערך הסימונים הכולל הוא מעל 50 ו'נכשל' אם הוא מתחת.

ציונים := 60

אם סימנים > 50 {
fmt. Println("לַעֲבוֹר")
} אַחֵר {
fmt. Println("לְהִכָּשֵׁל")
}

אם... אחרת אם... הצהרת אחרת

ה אם...אחר אם...אחר משפט מאפשר לך לשלב מספר הצהרות if.

if condition1 {
// בצע אם תנאי1 מתקיים
} אַחֵראם מצב2 {
// בצע אם תנאי2 מתקיים
} אַחֵר {
// מבצע אם לא תנאי1 ולא תנאי2 מתקיימים
}

הרחבת ה אחרת לדוגמה, התוכנית למטה בודקת גם אם הסימנים הם מעל 80 ומדפיסה "עבר בהצטיינות" אם כן:

ציונים := 60

אם סימנים > 80 {
fmt. Println("עבר בהצטיינות")
} אַחֵראם סימנים > 50 {
fmt. Println("לַעֲבוֹר")
} אַחֵר {
fmt. Println("לְהִכָּשֵׁל")
}

החלף הצהרת

ה החלף הצהרה היא הצהרה מותנית המאפשרת לך לבצע פעולות שונות על סמך הערך של ביטוי. ניתן לזהות ערכים משמעותיים כ"מקרים" ולפעול לפיהם.

הצהרת המתג ב-Go שונה במקצת משפות תכנות אחרות כמו C#, JavaScript ו-Python. הסיבה לכך היא שהוא מבצע רק את גוש הקוד תחת מקרה met. מילת המפתח הפסקה, הנדרשת בשפות אחרות, אינה נחוצה כאן:

החלף ביטוי {
מקרה expr1:
// בלוק קוד
מקרה expr2:
// בלוק קוד
בְּרִירַת מֶחדָל:
// בלוק קוד
}

הקוד לעיל מעריך את הביטוי שאחרי מילת המפתח switch, ולאחר מכן משווה אותו לכל ערך מקרה. אם ערך תואם, הבלוק הבא פועל. אתה יכול לקבל כמה מקרים שאתה צריך, אבל כולם חייבים להיות ייחודיים. בלוק ברירת המחדל פועל אם אין התאמה.

הדוגמה הבאה משתמשת בהצהרת switch כדי להציג פריט "מטלה" עבור כל יום בשבוע.

חֲבִילָה רָאשִׁי

יְבוּא (
"fmt"
"זְמַן"
)

func רָאשִׁי(){
היום := זמן. Now().Weekday()

החלף היום {
מקרה0:
fmt. Println("לְהִרָגַע.")
מקרה1:
fmt. Println("תנקה את הבית.")
מקרה2:
fmt. Println("בקר אצל רופא השיניים.")
מקרה3:
fmt. Println("לנכש עשבים שוטים בגינה.")
מקרה4:
fmt. Println("לשלוח מתנות")
מקרה5:
fmt. Println("לעשות כביסה.")
מקרה6:
fmt. Println("כתוב פוסט בבלוג.")
בְּרִירַת מֶחדָל:
fmt. Println("לא תוזמנה משימה.")
}
}

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

מתי להשתמש בהצהרות מותנות

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

השתמש בהצהרות מותנות כאשר הזרימה של התוכנית שלך תלויה בערך מסוים כגון קלט משתמש.

הבנה עבור Loops in Go

קרא הבא

לַחֲלוֹקצִיוּץלַחֲלוֹקאימייל

נושאים קשורים

  • תִכנוּת
  • תִכנוּת

על הסופר

מרי גאתוני (23 מאמרים שפורסמו)

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

עוד ממרי גאתוני

הירשם לניוזלטר שלנו

הצטרף לניוזלטר שלנו לקבלת טיפים טכניים, ביקורות, ספרים אלקטרוניים בחינם ומבצעים בלעדיים!

לחץ כאן כדי להירשם