גישה לערכים
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 12 מתוך 59.
ב־HashMap, כל מפתח משויך לערך. כדי לגשת לערך, משתמשים בשיטה get() ומספקים את המפתח.
לאחר מכן, הHashMap מחזיר את הערך המשויך למפתח הזה. אם המפתח לא קיים בHashMap, המתודה get() מחזירה null.
הנה התחביר הבסיסי:
ValueType value = mapName.get(key);mapName: השם שלHashMap.key: המפתח שאת הערך המשויך אליו רוצים לאחזר.ValueType: סוג הנתונים של הערך.
לדוגמה, נגדיר תחילה את HashMap:
HashMap<String, Integer> ages = new HashMap<>();
ages.put("Alice", 30);
ages.put("Bob", 25);ועכשיו כדי לאחזר את הערכים האלה:
Integer aliceAge = ages.get("Alice");
// הגיל של Alice: 30
Integer charlieAge = ages.get("Charlie");
// הגיל של Charlie: nullבדוגמה זו, אנחנו מאחזרים את הגיל של Alice באמצעות המפתח "Alice". מכיוון ש-"Charlie" אינו מפתח ב-HashMap, הערך של charlieAge הוא null.
אתגר
קלצרו מתודה בשם getCapital שמקבלת שני ארגומנטים:
HashMapבשםcapitals, שבו המפתחות הם שמות מדינות (מחרוזות) והערכים הם שמות ערי בירה (מחרוזות).- מחרוזת
countryשמייצגת את שם המדינה.
המתודה צריכה להחזיר את עיר הבירה של המדינה הנתונה באמצעות גישה אל HashMap capitals. אם המדינה לא נמצאת ב-HashMap, החזירו "Not found".
נסו בעצמכם
// --- מודולים להמרת מחרוזת של hashmap ל-hashmap ---
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
// -----------------------------
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static String getCapital(HashMap<String, String> capitals, String country) {
// כתבו את הקוד שלכם למטה
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String country = scanner.nextLine();
// המרת String של HashMap ל-HashMap
Type mapType = new TypeToken<HashMap<String, String>>(){}.getType();
HashMap<String, String> countryCapitals = new Gson().fromJson(hashMapString, mapType);
String result = getCapital(countryCapitals, country);
System.out.println(result);
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מערכים רב־ממדיים
יסודות מערכים דו־ממדייםגישה לאיברים במערך דו־ממדילולאות מקוננות עם מערכים דו־ממדייםסיכום — מערכים דו־ממדייםחיבור וחיסור מטריצותמערכים מדורגיםמערכים תלת־ממדיים ומעבר להםתבניות נפוצות במערכים דו־ממדייםסיכום — כל מה שצריך לדעת על מערכיםתרגלו בעצמכם: קומפיילר Java אונליין