Menu
Coddy logo textTech

מתודות של מילון

חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 76 מתוך 88.

Ruby מספקת כמה מתודות מובנות שעוזרות לך לבדוק ולעבוד עם hashes בצורה יעילה יותר. המתודות האלה מעניקות לך גישה מהירה למידע על התוכן של ה-hash שלך.

המתודה keys מחזירה מערך של כל המפתחות בגיבוב:

person = {"name" => "Alice", "age" => 25, "city" => "Paris"}

puts person.keys  # פלט: name, age, city

באופן דומה, המתודה values מחזירה מערך של כל הערכים:

person = {"name" => "Alice", "age" => 25, "city" => "Paris"}

puts person.values  # פלט: Alice, 25, Paris

כדי לבדוק אם מפתח מסוים קיים, השתמשו ב-key? או בכינוי שלו has_key?:

person = {"name" => "Alice", "age" => 25}

puts person.key?("name")     # פלט: true
puts person.key?("country")  # פלט: false

המתודה length מציינת כמה זוגות מפתח-ערך מכילה טבלת הגיבוב:

person = {"name" => "Alice", "age" => 25, "city" => "Paris"}

puts person.length  # פלט: 3

לבסוף, empty? בודקת אם יש בכלל זוגות ב-hash:

data = {}
puts data.empty?  # פלט: true
challenge icon

אתגר

קל

קרא שתי שורות קלט:

  1. מבנה hash המיוצג כזוגות מפתח-ערך המופרדים בפסיקים, בפורמט key:value (למשל, name:Alice,age:25,city:Paris)
  2. מפתח שיש לבדוק אם הוא קיים (מחרוזת)

נתח את הקלט הראשון כדי ליצור hash, ואז השתמש בשיטות של hash שלמדת כדי להציג את המידע הבא, כל פריט בשורה נפרדת:

  1. הצג כל מפתח ב-hash (אחד בכל שורה)
  2. הצג --- כמפריד
  3. הצג כל ערך ב-hash (אחד בכל שורה)
  4. הצג --- כמפריד
  5. הצג את מספר זוגות המפתח-ערך ב-hash
  6. הצג --- כמפריד
  7. הצג true או false כדי לציין אם ה-hash ריק
  8. הצג --- כמפריד
  9. הצג true או false כדי לציין אם המפתח מהקלט השני קיים ב-hash

לדוגמה, אם הקלטים הם name:Alice,age:25,city:Paris ו-age, הפלט אמור להיות:

name
age
city
---
Alice
25
Paris
---
3
---
false
---
true

אם הקלטים הם product:Laptop,price:999 ו-stock, הפלט אמור להיות:

product
price
---
Laptop
999
---
2
---
false
---
false

אם הקלטים הם status:active ו-status, הפלט אמור להיות:

status
---
active
---
1
---
false
---
true

נסו בעצמכם

# קראו את הקלט
input_string = gets.chomp
key_to_check = gets.chomp

# נתחו את מחרוזת הקלט כדי ליצור hash
hash = {}
input_string.split(',').each do |pair|
  key, value = pair.split(':')
  hash[key] = value
end

# TODO: כתבו את הקוד שלכם למטה
# השתמשו במתודות של hash כדי:
# 1. להדפיס כל מפתח (אחד בכל שורה)
# 2. להדפיס "---" כמפריד
# 3. להדפיס כל ערך (אחד בכל שורה)
# 4. להדפיס "---" כמפריד
# 5. להדפיס את מספר זוגות המפתח-ערך
# 6. להדפיס "---" כמפריד
# 7. להדפיס true/false אם hash ריק
# 8. להדפיס "---" כמפריד
# 9. הדפס true/false אם key_to_check קיים ב-hash
quiz iconבחנו את עצמכם

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

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

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