كيف يمكن للكائن الحصول على مفتاحه من HashMap؟
-
20-12-2019 - |
سؤال
لنفترض أن لدي رقعة شطرنج محددة باستخدام HashMap
HashMap <Position,Field> chessboard = new HashMap <Position,Field>();
أنا أعلن Position
مثل
class Position{
int x;
int y;
}
عندما أحاول إنشاء فصل دراسي لـ Field
كائن أواجه مشكلة:ال Field
يجب أن تحتوي على Position
لأنه محدد به.السابق.
class Field {
Position pos;
int color;
void draw(){
// draw Field using pos
}
}
ولكن سيتم استخدام كائن الموضع لـ HashMap.كيف يمكنني تجنب هذا التكرار؟
المحلول
التكلفة ليست في الواقع كما تعتقد:أنت تحتفظ فقط بمرجع واحد (أربعة بايت في معظم الأنظمة) لنفسه Position
كائن في الذاكرة.النفقات العامة ضئيلة.لا تقلق بشأن ذلك.
لا تنتمي إلى StackOverflow