Junior — Middle
Μπορεί να χρησιμοποιηθεί το null ως κλειδί σε ένα HashMap στη Java;
sobes.tech AI
Απάντηση από AI
Στην Java, η κλάση HashMap επιτρέπει τη χρήση του null ως κλειδί. Συγκεκριμένα, το HashMap επιτρέπει ακριβώς ένα κλειδί με τιμή null.
Αυτό είναι δυνατό επειδή κατά τον υπολογισμό του κωδικού κατακερματισμού για το κλειδί null, χρησιμοποιείται ειδική επεξεργασία — αντί να καλέσει το hashCode(), επιστρέφεται 0.
Παράδειγμα:
import java.util.HashMap;
public class Example {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<>();
map.put(null, "τιμή για το κλειδί null");
System.out.println(map.get(null)); // Θα εμφανίσει: τιμή για το κλειδί null
}
}
Ωστόσο, πρέπει να θυμάστε ότι άλλες υλοποιήσεις του Map, όπως το Hashtable, δεν επιτρέπουν το null ως κλειδί ή τιμή.