Java TreeMap — HigherKey() i LowerKey()

Java Treemap Higherkey I Lowerkey



TreeMap przechowuje dane w posortowanej kolejności na podstawie kluczowych elementów. Wyższe dane klucza (wartość klucz-wartość) są przechowywane na ostatniej pozycji w tej strukturze danych.

Omówmy metody highKey() i lowerKey() dostępne w kolekcji TreeMap.







WyższyKlucz()

Metoda highKey() w kolekcji TreeMap zwraca klucz z obiektu kolekcji TreeMap, który jest większy niż podany klucz. Możemy dostarczyć ten klucz (typ całkowity) do metody highKey() jako parametr. Klucz wyniku jest mniejszy wśród wszystkich kluczy, które są większe niż klucz dostarczony.



Składnia:

obiekt_mapy drzewa. wyższy klucz ( Klucz )

Gdzie treemap_object reprezentuje kolekcję TreeMap.



Parametr:

Klucz jest typu Integer.





Zwrócić:

Zwraca klucz z obiektu Collection.

Notatka:

  1. Jeśli DrzewoMapa obiekt jest pusty, zero jest zwracany.
  2. Jeśli dostarczony klucz jest równy najwyższemu kluczowi w DrzewoMapa obiekt, zwracana jest wartość null.
  3. Jeśli dostarczony klucz to zero , NullPointerException jest podniesiony.
  4. Jeśli DrzewoMapa jest pusta i jeśli podamy klucz jako null, zero jest zwracany.

Scenariusz:

Rozważmy TreeMap z następującymi parami:



{ ( 1000 , 'Chiny' ) , ( 2890 , „Wielka Brytania” ) , ( 5000 , 'NAS' ) , ( 1500 , 'Delhi' ) , ( 400 , 'Japonia' ) }

Teraz określ klucz jako 1000 wewnątrz metody highKey().

Tak więc klucze większe niż 1000 to 1500,2890 i 5000. Wśród nich 1500 to małe. Wynik to 1500.

Przykład 1:

Tutaj tworzymy kolekcję TreeMap, która przechowuje liczbę ludności jako klucz, a miasto/stan jako wartość. Teraz otrzymujemy kilka kluczy, które są mniejsze lub równe podanemu kluczowi za pomocą metody highKey().

import java.util.* ;

import java.util.Mapa drzewa ;

publiczny klasa Główny

{

publiczny statyczny próżnia Główny ( Strunowy [ ] argumenty ) {

// Utwórz mapę drzewa z kluczem jako liczbą całkowitą i wartością jako typem ciągu
DrzewoMapa populacja_dane = Nowy DrzewoMapa ( ) ;

// Wstaw 5 wartości do obiektu populacja_danych
populacja_dane. położyć ( 1000 , 'Chiny' ) ;
populacja_dane. położyć ( 2890 , „Wielka Brytania” ) ;
populacja_dane. położyć ( 5000 , 'NAS' ) ;
populacja_dane. położyć ( 1500 , 'Delhi' ) ;
populacja_dane. położyć ( 400 , 'Japonia' ) ;

System . na zewnątrz . drukuj ( „Ludność:” + populacja_dane ) ;

// Pobierz klucz, który jest większy niż 1000
System . na zewnątrz . drukuj ( 'wyższy klucz(1000): ' + populacja_dane. wyższy klucz ( 1000 ) ) ;

// Pobierz klucz, który jest większy niż 400
System . na zewnątrz . drukuj ( 'wyższy klucz (400): ' + populacja_dane. wyższy klucz ( 400 ) ) ;

}

}

Wyjście:

  1. Podany klucz to 1000. 1500 to klucz, który jest większy niż 1000 i mniejszy niż pozostałe klucze (2890, 5000), które są większe niż 1000 w populacjach.
  2. Podany klucz to 400. 1000 jest kluczem, który jest większy niż 400 i mniejszy niż pozostałe klucze (1500,2890,5000), które są większe niż 400 w populacjach danych.

Przykład 2:

Podajmy następujące elementy:

  1. 5000 jako klucz
  2. Null jak klucz
import java.util.* ;

import java.util.Mapa drzewa ;

publiczny klasa Główny

{

publiczny statyczny próżnia Główny ( Strunowy [ ] argumenty ) {

// Utwórz mapę drzewa z kluczem jako liczbą całkowitą i wartością jako typem ciągu
DrzewoMapa populacja_dane = Nowy DrzewoMapa ( ) ;

// Wstaw 5 wartości do obiektu populacja_danych
populacja_dane. położyć ( 1000 , 'Chiny' ) ;
populacja_dane. położyć ( 2890 , „Wielka Brytania” ) ;
populacja_dane. położyć ( 5000 , 'NAS' ) ;
populacja_dane. położyć ( 1500 , 'Delhi' ) ;
populacja_dane. położyć ( 400 , 'Japonia' ) ;

System . na zewnątrz . drukuj ( „Ludność:” + populacja_dane ) ;

// Pobierz klucz, który jest większy niż 5000
System . na zewnątrz . drukuj ( 'wyższy klucz(5000):' + populacja_dane. wyższy klucz ( 5000 ) ) ;

// Pobierz klucz, który jest większy niż null
System . na zewnątrz . drukuj ( 'wyższy klucz(null): ' + populacja_dane. wyższy klucz ( zero ) ) ;

}

}

Wyjście:

  1. Podany klucz to 5000. Nie ma klucza większego niż 5000. Tak więc zero jest zwracany.
  2. Podany klucz jest pusty, więc NullPointerException jest zwracany.

DolnyKlucz()

Metoda lowerKey() w kolekcji TreeMap zwraca klucz z obiektu kolekcji TreeMap, który jest mniejszy niż podany klucz. Możemy dostarczyć ten klucz (typ całkowity) do metody lowerKey() jako parametr. Klucz wyniku jest większy wśród wszystkich kluczy, które są mniejsze niż klucz dostarczony.

Składnia:

obiekt_mapy drzewa. dolnyKlucz ( Klucz )

Gdzie treemap_object reprezentuje kolekcję TreeMap.

Parametr:

Klucz jest typu Integer.

Zwrócić:

Zwraca klucz z obiektu Collection.

Notatka:

  1. Jeśli DrzewoMapa obiekt jest pusty, zero jest zwracany.
  2. Jeśli dostarczony klucz jest równy najniższemu kluczowi w DrzewoMapa obiekt, zwracana jest wartość null.
  3. Jeśli podany klucz jest pusty, NullPointerException jest podniesiony.
  4. Jeśli DrzewoMapa jest pusta i jeśli podamy klucz jako null, zero jest zwracany.

Scenariusz:

Rozważmy TreeMap z następującymi parami:

{ ( 1000 , 'Chiny' ) , ( 2890 , „Wielka Brytania” ) , ( 5000 , 'NAS' ) , ( 1500 , 'Delhi' ) , ( 400 , 'Japonia' ) }

Teraz określ klucz jako 5000 wewnątrz metody lowerKey().

Klucze, które mają mniej niż 5000 to: 2890,1500,1000 i 400. Wśród nich 2890 jest duże. Wynik to 2890.

Przykład 1:

Tutaj tworzymy kolekcję TreeMap, która przechowuje liczbę ludności jako klucz, a miasto/stan jako wartość. Teraz otrzymujemy kilka kluczy, które są mniejsze lub równe podanemu kluczowi za pomocą metody highKey().

import Jawa. używać . *;

import Jawa. używać . DrzewoMapa ;

publiczny klasa Główny

{

publiczny statyczny próżnia Główny ( Strunowy [ ] argumenty ) {

// Utwórz mapę drzewa z kluczem jako liczbą całkowitą i wartością jako typem ciągu
TreeMap populacja_dane = Nowy DrzewoMapa ( ) ;

// Wstaw 5 wartości do obiektu populacja_danych
populacja_dane. położyć ( 1000 , 'Chiny' ) ;
populacja_dane. położyć ( 2890 , „Wielka Brytania” ) ;
populacja_dane. położyć ( 5000 , 'NAS' ) ;
populacja_dane. położyć ( 1500 , 'Delhi' ) ;
populacja_dane. położyć ( 400 , 'Japonia' ) ;

System. na zewnątrz . drukuj ( „Ludność:” + populacja_dane ) ;

// Zdobądź klucz, który jest mniejszy niż 5000
System. na zewnątrz . drukuj ( 'dolny klawisz (5000): ' + populacja_dane. dolnyKlucz ( 5000 ) ) ;

// Zdobądź klucz, który jest mniejszy niż 400
System. na zewnątrz . drukuj ( 'dolny klucz (400): ' + populacja_dane. dolnyKlucz ( 400 ) ) ;

}


}

Wyjście:

  1. Podany klucz to 5000. 2890 to klucz, który jest mniejszy niż 5000 i większy niż pozostałe klucze (1000,1500), które są mniejsze niż 5000 w populacjach danych.
  2. Podany klucz to 400 . Nie ma klucza mniej niż 400. Tak więc zero jest zwracany.

Przykład 2:

Podajmy Null jako klucz.

import Jawa. używać . *;

import Jawa. używać . DrzewoMapa ;

publiczny klasa Główny

{

publiczny statyczny próżnia Główny ( Strunowy [ ] argumenty ) {

// Utwórz mapę drzewa z kluczem jako liczbą całkowitą i wartością jako typem ciągu
TreeMap populacja_dane = Nowy DrzewoMapa ( ) ;

// Wstaw 5 wartości do obiektu populacja_danych
populacja_dane. położyć ( 1000 , 'Chiny' ) ;
populacja_dane. położyć ( 2890 , „Wielka Brytania” ) ;
populacja_dane. położyć ( 5000 , 'NAS' ) ;
populacja_dane. położyć ( 1500 , 'Delhi' ) ;
populacja_dane. położyć ( 400 , 'Japonia' ) ;

System. na zewnątrz . drukuj ( „Ludność:” + populacja_dane ) ;

// Pobierz klucz, który jest mniejszy niż null
System. na zewnątrz . drukuj ( 'lowerKey(null): ' + populacja_dane. dolnyKlucz ( zero ) ) ;

}


}

Wyjście:

Podany klucz to zero . Więc, NullPointerException jest zwracany.

Wniosek

Omówiliśmy metody highKey() i lowerKey() w kolekcji Java TreeMap. HighKey() zwraca klucz, który jest mniejszy spośród wszystkich kluczy, które są większe niż klucz dostarczony. Podczas gdy lowerKey() zwraca klucz, który jest większy spośród wszystkich kluczy, które są mniejsze niż klucz dostarczony. NullPointerException występuje, gdy określimy parametr jako null dla tych dwóch metod.