Bu eğitimde, bir örnek yardımıyla Java NavigableMap arayüzü ve yöntemleri hakkında bilgi edineceğiz.
NavigableMap
Java koleksiyonları çerçeve arayüz haritası girdileri arasında gezinmek için özellikler sağlar.
SortedMap'in bir türü olarak kabul edilir.
NavigableMap uygulayan sınıf
Yana NavigableMap
bir arayüz, biz ondan nesneler oluşturamazsınız.
NavigableMap
Arayüzün işlevlerini kullanmak için TreeMap
uygulayan sınıfı kullanmamız gerekir NavigableMap
.
NavigableMap nasıl kullanılır?
Java'da, java.util.NavigableMap
kullanmak için paketi içe aktarmalıyız NavigableMap
. Paketi içe aktardıktan sonra, işte nasıl gezinebilir bir harita oluşturabiliriz.
// NavigableMap implementation by TreeMap class NavigableMap numbers = new TreeMap();
Yukarıdaki kodda, TreeMap
sınıfın numaraları adlı gezilebilir bir harita oluşturduk .
Buraya,
- Anahtar - bir haritadaki her bir öğeyi (değeri) ilişkilendirmek için kullanılan benzersiz bir tanımlayıcı
- Değer - bir haritadaki anahtarlarla ilişkilendirilen öğeler
NavigableMap Yöntemleri
NavigableMap
Bir türü olarak kabul edilir SortedMap
. Çünkü arayüzü NavigableMap
genişletiyor SortedMap
.
Dolayısıyla, tüm SortedMap
yöntemler de mevcuttur NavigableMap
. Bu yöntemlerin içinde nasıl tanımlandığını öğrenmek için SortedMap
Java SortedMap'i ziyaret edin.
Bununla birlikte, bazı yöntemlerde SortedMap
( headMap()
, tailMap()
ve subMap()
) 'de farklı bir şekilde tanımlanır NavigableMap
.
Bu yöntemlerin nasıl tanımlandığını görelim NavigableMap
.
headMap (anahtar, booleanValue)
headMap()
Tüm yöntem döner (bir bağımsız değişken olarak geçirilir) belirtilen anahtar önce tüm bu anahtarlar ile ilişkili bir gezilebilir haritanın girişleri.
BooleanValue isteğe bağlı bir parametredir. Varsayılan değeri false
.
Eğer true
bir booleanValue, yöntem döndürür Belirtilen anahtarla ilişkili giriş dahil, belirtilen tuşundan önce tüm bu tuşların, ilişkili tüm girdileri olarak geçirilir.
tailMap (anahtar, booleanValue)
tailMap()
Belirtilen anahtarla ilişkili giriş kapsamaktadır döner (bir bağımsız değişken olarak geçirilir) belirtilen anahtar sonuçta bu anahtarlar ile ilişkili bir gezilebilir harita tüm girişler.
BooleanValue isteğe bağlı bir parametredir. Varsayılan değeri true
.
Eğer false
bir booleanValue, yöntem döndürür Belirtilen anahtarla ilişkili girişi dahil etmeden, belirtilen anahtar sonra bu tuşlar ile ilişkili tüm girdileri olarak geçirilir.
alt harita (k1, bv1, k2, bv2)
subMap()
Bütün bu metot bize k1 ve k1 ilişkili giriş dahil K2 arasındaki tuşları ile ilişkili girdileri.
Bv1 ve bv2 isteğe bağlı parametrelerdir. Bv1'in varsayılan değeri true ve bv2'nin varsayılan değeri false
.
Eğer false
BV1 olarak geçirilir, tüm bu metot bize k1 ilişkili girişi dahil etmeden, K1 ve K2 arasındaki tuşları ile ilişkili girdileri.
Eğer true
BV2 olarak geçirilir, tüm bu metot bize k1 ilişkili giriş dahil K1 ve K2 arasındaki tuşları ile ilişkili girdileri.
Diğer yöntemler. Diğer metodlar
NavigableMap
Haritaların girişlerini bulmak için kullanılabilecek çeşitli yöntemler sağlar.
- descendingMap () - haritadaki girişlerin sırasını tersine çevirir
- descendingKeyMap () - bir haritadaki anahtarların sırasını tersine çevirir
- tavanEntry () - anahtarları belirtilen anahtardan büyük veya ona eşit olan tüm girişler arasında en düşük anahtara sahip bir giriş döndürür
- roofKey () - belirtilen anahtardan büyük veya ona eşit olan anahtarlar arasında en düşük anahtarı döndürür
- floorEntry () - anahtarları belirtilen anahtardan küçük veya ona eşit olan tüm girişler arasında en yüksek anahtara sahip girişi döndürür
- floorKey () - belirtilen anahtardan küçük veya ona eşit olan anahtarlar arasında en yüksek anahtarı döndürür
- highEntry () - anahtarları belirtilen anahtardan büyük olan tüm girişler arasında en düşük anahtara sahip bir giriş döndürür
- highKey () - belirtilen anahtardan daha büyük olan anahtarlar arasında en düşük anahtarı döndürür
- lowerEntry () - anahtarları belirtilen anahtardan küçük olan tüm girişler arasında en yüksek anahtara sahip bir girişi döndürür
- lowerKey () - belirtilen anahtardan daha küçük olan anahtarlar arasında en yüksek anahtarı döndürür
- firstEntry () - haritanın ilk girişini (en düşük tuşa sahip girişi ) döndürür
- lastEntry () - haritanın son girişini (en yüksek tuşa sahip girişi ) döndürür
- PollFirstEntry () - haritanın ilk girişini döndürür ve kaldırır
- anketLastEntry () - haritanın son girişini döndürür ve kaldırır
Daha fazla bilgi edinmek için Java NavigableMap'i (resmi Java belgeleri) ziyaret edin.
TreeMap Sınıfında NavigableMap Uygulaması
import java.util.NavigableMap; import java.util.TreeMap; class Main ( public static void main(String() args) ( // Creating NavigableMap using TreeMap NavigableMap numbers = new TreeMap(); // Insert elements to map numbers.put("Two", 2); numbers.put("One", 1); numbers.put("Three", 3); System.out.println("NavigableMap: " + numbers); // Access the first entry of the map System.out.println("First Entry: " + numbers.firstEntry()); // Access the last entry of the map System.out.println("Last Entry: " + numbers.lastEntry()); // Remove the first entry from the map System.out.println("Removed First Entry: " + numbers.pollFirstEntry()); // Remove the last entry from the map System.out.println("Removed Last Entry: " + numbers.pollLastEntry()); ) )
Çıktı
NavigableMap: (Bir = 1, Üç = 3, İki = 2) İlk Giriş: Bir = 1 Son Giriş: İki = 2 Kaldırılan İlk Giriş: Bir = 1 Kaldırılan Son Giriş: İki = 2
Daha fazla bilgi edinmek için TreeMap
Java TreeMap'i ziyaret edin.
Artık NavigableMap
arayüzü biliyoruz TreeMap
, bir sonraki derste sınıfı kullanarak bunun uygulanmasını ayrıntılı olarak öğreneceğiz .