Tässä opetusohjelmassa opitaan Java NavigableSet -käyttöliittymästä ja sen menetelmistä esimerkin avulla.
NavigableSet
Rajapinta Java kokoelmat puitteissa antaa piirteet navigoida keskuudessa asetettu elementtejä.
Sitä pidetään SortedSet-tyyppinä.
Luokka, joka toteuttaa NavigableSet
NavigableSet
Käyttöliittymän toimintojen käyttämiseksi meidän on käytettävä toteutettavaa TreeSet
luokkaa NavigableSet
.
Kuinka NavigableSet-sovellusta käytetään?
Java-ohjelmassa java.util.NavigableSet
paketti on tuotava käytettäväksi NavigableSet
. Kun tuomme paketin, näin voimme luoda navigoitavia sarjoja.
// SortedSet implementation by TreeSet class NavigableSet numbers = new TreeSet();
Tässä olemme luoneet navigoitavan sarjan, jonka nimet ovat TreeSet
luokan numerot .
NavigableSet-menetelmät
Tätä NavigableSet
pidetään eräänlaisena SortedSet
. Se johtuu siitä, että se NavigableSet
laajentaa SortedSet
käyttöliittymää.
Siksi kaikki SortedSet-menetelmät ovat saatavilla myös NavigableSet-sovelluksessa. Lisätietoja näiden menetelmien käyttämisestä on Java SortedSet -sivulla.
Jotkin SortedSet
( headSet()
, tailSet()
ja subSet()
) -menetelmistä on kuitenkin määritelty eri tavalla NavigableSet
.
Katsotaanpa, miten nämä menetelmät määritellään NavigableSet
.
headSet (elementti, booleanValue)
headSet()
Menetelmä palauttaa kaikki elementit väylänä asettaa ennen määritettyä elementin (joka välitetään argumentti).
BooleanValue-parametri on valinnainen. Sen oletusarvo on false
.
Jos true
se välitetään booleanValue-arvona, menetelmä palauttaa kaikki määritettyä elementtiä edeltävät elementit mukaan lukien määritetyn elementin.
tailSet (elementti, booleanValue)
tailSet()
Menetelmä palauttaa kaikki elementit väylänä joukko jälkeen määritetyn elementin (joka välitetään argumentti), mukaan lukien määritetyn elementti.
BooleanValue-parametri on valinnainen. Sen oletusarvo on true
.
Jos false
se välitetään booleanValue-arvona, menetelmä palauttaa kaikki määritetyn elementin jälkeen olevat elementit sisällyttämättä määritettyä elementtiä.
alajoukko (e1, bv1, e2, bv2)
subSet()
Menetelmä palauttaa kaikkien elementtien välillä e1 ja e2, mukaan lukien e1.
Bv1 ja bv2 ovat valinnaisia parametreja. Bv1: true
n oletusarvo on ja bv2: n oletusarvo on false
.
Jos false
se välitetään nimellä bv1, menetelmä palauttaa kaikki elementit välillä e1 ja e2 sisällyttämättä niitä e1
.
Jos true
se välitetään nimellä bv2, menetelmä palauttaa kaikki elementit välillä e1 ja e2, mukaan lukien e1.
Menetelmät navigointiin
Tarjolla NavigableSet
on erilaisia menetelmiä, joita voidaan käyttää siirtymiseen sen elementtien yli.
- descendingSet () - muuttaa sarjan elementtien järjestyksen
- descendingIterator () - palauttaa iteraattorin, jota voidaan käyttää toistamaan joukko käänteisessä järjestyksessä
- katto () - palauttaa alimman elementin niiden elementtien joukosta, jotka ovat suurempia tai yhtä suuria kuin määritetty elementti
- floor () - palauttaa suurimman elementin niiden elementtien joukosta, jotka ovat pienempiä tai yhtä suuria kuin määritetty elementti
- suurempi () - palauttaa alimman elementin niiden elementtien joukosta, jotka ovat suurempia kuin määritetty elementti
- alempi () - palauttaa suurimman elementin niiden elementtien joukosta, jotka ovat pienempiä kuin määritetty elementti
- pollFirst () - palauttaa ja poistaa ensimmäisen elementin joukosta
- pollLast () - palauttaa ja poistaa viimeisen elementin joukosta
Lisätietoja NavigableSet
Java Java NavigableSet -sivustosta (viralliset Java-ohjeet).
NavigableSetin toteutus TreeSet-luokassa
import java.util.NavigableSet; import java.util.TreeSet; class Main ( public static void main(String() args) ( // Creating NavigableSet using the TreeSet NavigableSet numbers = new TreeSet(); // Insert elements to the set numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("NavigableSet: " + numbers); // Access the first element int firstElement = numbers.first(); System.out.println("First Number: " + firstElement); // Access the last element int lastElement = numbers.last(); System.out.println("Last Element: " + lastElement); // Remove the first element int number1 = numbers.pollFirst(); System.out.println("Removed First Element: " + number1); // Remove the last element int number2 = numbers.pollLast(); System.out.println("Removed Last Element: " + number2); ) )
Tuotos
NavigableSet: (1, 2, 3) Ensimmäinen elementti: 1 Viimeinen elementti: 3 Poistettu ensimmäinen elementti: 1 Poistettu viimeinen elementti: 3
Lisätietoja on TreeSet
Java TreeSet -sivulla.
Nyt kun tiedämme NavigableSet
käyttöliittymästä, opimme sen toteuttamisesta TreeSet
luokan avulla.