Menu
Coddy logo textTech

מפות

שיעור 17 מתוך 21 בקורס פרוסות ומפות ב-GoLang של Coddy.

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

התחביר להכרזה על מפה הוא כדלקמן:

products := map[string]int{}

בדומה להכרזה על משתנים עבור מערכים ופרוסות, אפשר להשתמש בהכרזה הקצרה (:=) או במילת המפתח var ואחריה שם, אחריו מילת המפתח map, ובתוך הסוגריים המרובעים מציינים את טיפוס המפתח, ולבסוף מציינים את טיפוס הערך או טיפוס האיבר.

 

גם פרוסות ומערכים הם טיפוסים של מפתח-ערך, אבל המפתח הוא פשוט האינדקס. במפות אפשר להשתמש בכל טיפוס כמפתח, כל עוד אפשר להשוות אותו. בדרך כלל, הטיפוסים הם int ו-string.

כל האיברים במפה צריכים להיות מאותו טיפוס; אי אפשר לערבב טיפוסים במפה אחת.

בואו נאתחל את המפה שלנו:

products := map[string]int{
   "iPhone": 1200,
   "MacBook": 4000,
   "Keyboard": 400,
}

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

fmt.Println("The Price of Keyboard:", products["Keyboard"])

פלט:

The Price of Keyboard: 400

אפשר להדפיס את כל האיברים במפה, בדיוק כמו פרוסה:

fmt.Println(products)

והתוצאה תהיה:

map[iPhone:1200 MacBook:4000 Keyboard:400]

 

challenge icon

אתגר

קל

יש לנו אוסף ספרים, שלכל אחד מהם מספר עמודים שונה, כדלקמן:

  • בספר Python יש 300 עמודים
  • בספר Golang יש 400 עמודים
  • בספר Rust יש 500 עמודים

ממשו זאת באמצעות map והדפיסו למסך את מספר העמודים בספר Golang .

נסו בעצמכם

package main

import "fmt"

func main() {
    // הגדירו מפה 
    

    // הדפיסו את מספר העמודים בספר Golang
     
}

כל השיעורים ביחידה פרוסות ומפות ב-GoLang

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