كيف تم استدعاء مفتاح غير موجود في الكلاس TreeMap؟
لدي بعض تشوش في فهم المثال التالي:
import java.util.TreeMap; import java.util.SortedMap; public class Main { public static void main(String[] args) { // sm إسمه TreeSet هنا قمنا بإنشاء كائن من الكلاس SortedMap sm = new TreeMap(); // تعمدنا عدم ترتيب القيم من الأصغر إلى الأكبر حتى ترى أنه سيرتبهم بشكل تلقائي .sm هنا قمنا بإضافة 5 قيم في الكائن sm.put(11, "Rola"); sm.put(7, "Rayan"); sm.put(15, "Sami"); sm.put(2, "Ahmad"); sm.put(6, "Mira"); // لاحظ أنه قام بترتيبهم من الأصغر إلى الأكبر .sm هنا قمنا بعرض عناصر الكائن System.out.println("All keys/values: " + sm); // '8' الموجودة قبل المفتاح sm هنا قمنا بعرض جميع عناصر الكائن System.out.println("headMap(8): " + sm.headMap(8)); // '8' إبتداءاً من المفتاح sm هنا قمنا بعرض جميع عناصر الكائن System.out.println("tailMap(8): " + sm.tailMap(8)); // 'إبتداءاً من المفتاح '1' وصولاً إلى المفتاح '10 sm هنا قمنا بعرض جميع عناصر الكائن System.out.println("subMap(1,10): " + sm.subMap(1, 10)); // sm هنا قمنا بعرض أول مفتاح موجود في الكائن System.out.println("First key: " + sm.firstKey()); // sm هنا قمنا بعرض آخر مفتاح موجود في الكائن System.out.println("Last key: " + sm.lastKey()); // هنا قمنا بعرض الإنترفيس المستخدم في مقارنة العناصر System.out.println("Comparator(): " + sm.comparator()); } }
مشكلتي أنه تم استدعاء المفتاح 8 و هو غير موجود، كيف يمكن ذلك؟