سؤال

أحتاج إلى نوع من الخريطة التي يمكن الوصول إليها في اتجاهين، لذلك مع بنية مفتاح مفتاح بدلا من القيمة الرئيسية. هل هذا موجود في جافا؟ إذا لم يكن الأمر كذلك، فما هي أفضل طريقة لإنشاءها؟

مثال:

mySpecialHashMap.put("key1", "key2");

mySpecialMap.getL2R("key1") returns "key2";
mySpecialMap.getR2L("key2") returns "key1";
هل كانت مفيدة؟

المحلول

لذلك تريد خريطة ثنائية الاتجاه. يمكنك استخدام Apache Commons مجموعات Bidimap أو مجموعات جوجل BIMAP. لهذا.

نصائح أخرى

قد ترغب في النظر في بيماب من جوجا مكتبة (المعروفة سابقا باسم مجموعات Google).

مثال حيث hashbimap. يستخدم ك "myspecialhashmap":

BiMap<String, String> myBiMap = HashBiMap.create();
myBiMap.put("key1", "key2");

myBiMap.get("key1"); // returns "key2"
myBiMap.inverse().get("key2"); // returns "key1"

نعم هنالك بيماب من مجموعات جوجل.

أو للعناية التي يمكن عكسها هذا سؤال stackoverflow.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top