logo

NavigableSet Java

Java valodā NavigableSet ir apakštips Sakārtots komplekts saskarne. Tas ļauj mums veikt dažādas darbības, piemēram, iegūt tuvākās atbilstības noteiktam elementam dilstošā secībā un citas. Tas nodrošina metodes, kā pārvietoties pa komplekta elementiem.

Piemēram NavigableSet saskarne ļauj mums pārvietoties pa kopu gan augošā, gan dilstošā secībā, atšķirībā no SortedSet, kas atbalsta tikai augošu secību. Klases, kas ievieš NavigableSet saskarni, ir TreeSet  un  ConcurrentSkipListSet

  • NavigableSet paplašina SortedSet un tādējādi nodrošina tādas metodes kā first() last() headSet() tailSet() utt.
  • Tas ļauj pārvietoties abos virzienos augošā un dilstošā secībā
  • Visizplatītākā NavigableSet ieviešana ir TreeSet.

Piemērs: Šajā piemērā ir parādīta NavigableSet izveide, izmantojot TreeSet, un elementu pievienošana tai, kas automātiski kārto tos augošā secībā.



javascript druka
Java
// Java program to demonstrates  // the working of NavigableSet  import java.util.*; public class Geeks {  public static void main(String[] args) {  NavigableSet<Integer> ns = new TreeSet<>();  // Add elements to the set  ns.add(10);  ns.add(20);  ns.add(30);  ns.add(40);  ns.add(50);  System.out.println('Navigable Set: ' + ns);  } } 

Izvade
Navigable Set: [10 20 30 40 50] 


Tālāk redzamajā diagrammā ir parādīta mantojuma struktūra Java kolekcijas sistēmā, kas saistīta ar kopām.

NavigableSet-in-Java-with-Examples' title=

TreeSet ir klase, kas ievieš NavigableSet kas savukārt paplašina SortedSet, kas paplašina Iestatīt .

NavigableSet deklarācija

Programmā Java NavigableSet deklarāciju var deklarēt kā:

NavigableSetsetName;

Piezīme:' Tips ir elementa veids kopā (piemēram, vesels skaitlis String utt.), un setName ir mainīgā nosaukums.

NavigableSet objektu izveide

NavigableSet nevar izveidot tieši, jo tā ir saskarne. Tā vietā mēs izmantojam tādu klasi kā TreeSet kas to īsteno. Ar vispārīgo datu palīdzību mēs varam definēt, kāda veida objektu komplektā tiks saglabāti. Šo tipa drošo komplektu var definēt šādi:

NavigableSetkomplekts = jauns TreeSet();

dzēst pēdējo commit git

Piemērs: Šajā piemērā ir parādīts, kā izmantot dažādas NavigableSet metodes, piemēram, descedingSet() tailSet() low() pollFirst() un pollLast(), lai manipulētu un pārvietotos pa sakārtoto kopu gan normālā, gan apgrieztā secībā.

Java
// Java Program to demostrates the  // working of various methods of NavigableSet import java.util.NavigableSet; import java.util.TreeSet; public class Geeks {  public static void main(String[] args)  {  NavigableSet<Integer> ns = new TreeSet<>();  ns.add(0);  ns.add(1);  ns.add(2);  ns.add(3);  ns.add(4);  ns.add(5);  ns.add(6);  // Get a reverse view of the navigable set  NavigableSet<Integer> revNs = ns.descendingSet();  // Print the normal and reverse views  System.out.println('Normal order: ' + ns);  System.out.println('Reverse order: ' + revNs);  NavigableSet<Integer> t = ns.tailSet(3 true);  System.out.println('3 or more: ' + t);  System.out.println('lower(3): ' + ns.lower(3));  System.out.println('floor(3): ' + ns.floor(3));  System.out.println('higher(3): ' + ns.higher(3));  System.out.println('ceiling(3): ' + ns.ceiling(3));  System.out.println('pollFirst(): ' + ns.pollFirst());  System.out.println('Navigable Set: ' + ns);  System.out.println('pollLast(): ' + ns.pollLast());  System.out.println('Navigable Set: ' + ns);  System.out.println('pollFirst(): ' + ns.pollFirst());  System.out.println('Navigable Set: ' + ns);  System.out.println('pollFirst(): ' + ns.pollFirst());  System.out.println('Navigable Set: ' + ns);  System.out.println('pollFirst(): ' + ns.pollFirst());  System.out.println('Navigable Set: ' + ns);  System.out.println('pollFirst(): ' + ns.pollFirst());  System.out.println('pollLast(): ' + ns.pollLast());  } } 

Izvade:

Izvade' loading='lazy' title=

Dažādu darbību veikšana ar NavigableSet

1. Elementu pievienošana: Mēs varam izmantot pievienot () metode elementu ievietošanai NavigableSet. Elementi tiek glabāti sakārtotā secībā, nav atļauti dublikāti, un arī NavigableSet nepieņem nulles vērtības.

Piemērs: Šis piemērs parāda elementu pievienošanu NavigableSet, izmantojot add(), kur dublikāti tiek ignorēti un elementi tiek sakārtoti augošā secībā.

Java
// Java Program to demonstrates the working of add() import java.util.*; import java.io.*; class Geeks {  public static void main(String[] args)  {  NavigableSet<String> ts = new TreeSet<String>();  // Elements are added using add() method  ts.add('A');  ts.add('B');  ts.add('C');  ts.add('A');  System.out.println('NavigableSet: ' + ts);  } } 

Izvade
NavigableSet: [A B C] 


2. Piekļuve elementiem: Pēc elementu pievienošanas, ja vēlamies piekļūt elementiem, varam izmantot iebūvētās metodes, piemēram satur () pirmais () pēdējais () utt.

Piemērs: Šis piemērs parāda elementu pievienošanu NavigableSet, pārbaudot elementa esamību un izgūstot pirmo un pēdējo elementu.

cilpas veidi
Java
// Java program to demonstrates the  // working of contains() first() and last() method import java.util.*; import java.io.*; class Geeks {  public static void main(String[] args)  {  NavigableSet<String> ts = new TreeSet<String>();  // Elements are added using add() method  ts.add('A');  ts.add('B');  ts.add('C');  ts.add('A');  System.out.println('NavigableSet: ' + ts);  String s = 'D';  // Check if the above string exists in  // the NavigableSet or not  System.out.println('D exists in the NavigableSet?: '  + ts.contains(s));  // Print the first element in  // the NavigableSet  System.out.println('First Element of NavigableSet: '   + ts.first());  // Print the last element in  // the NavigableSet  System.out.println('Last Element of NavigableSet: '   + ts.last());  } } 

Izvade
NavigableSet: [A B C] D exists in the NavigableSet?: false First Element of NavigableSet: A Last Element of NavigableSet: C 


3. Elementu noņemšana: Vērtības var noņemt no NavigableSet, izmantojot noņemt () aptaujaFirst() aptauja Pēdējā() .

Piemērs: Šajā piemērā ir parādīta elementu noņemšana no NavigableSet.

Java
// Java Program to demonstrates the working of remove() // pollFirst() and pollLast() method import java.io.*; import java.util.*; class Geeks {  public static void main(String[] args)  {  NavigableSet<String> ts = new TreeSet<String>();  // Elements are added using add() method  ts.add('A');  ts.add('B');  ts.add('C');  ts.add('B');  ts.add('D');  ts.add('E');  System.out.println('NavigableSet: ' + ts);  // Removing the element b  ts.remove('B');  System.out.println('After removing element ' + ts);  // Remove the First element of TreeSet  ts.pollFirst();  System.out.println(  'After the removal of First Element ' + ts);  // Remove the Last element of TreeSet  ts.pollLast();  System.out.println(  'After the removal of Last Element ' + ts);  } } 

Izvade
NavigableSet: [A B C D E] After removing element [A C D E] After the removal of First Element [C D E] After the removal of Last Element [C D] 


4. Atkārtojošie elementi: Ir dažādi veidi, kā atkārtot NavigableSet. Slavenākais no tiem ir izmantot  uzlabota cilpai.

Piemērs: Šis piemērs parāda elementu pievienošanu NavigableSet un atkārtošanu augošā secībā.

Java
// Java Program to iterate through NavigableSet import java.util.*; import java.io.*; class Geeks {  public static void main(String[] args)  {  NavigableSet<String> ts = new TreeSet<String>();  // Elements are added using add() method  ts.add('C');  ts.add('D');  ts.add('E');  ts.add('A');  ts.add('B');  ts.add('Z');  // Iterating though the NavigableSet  for (String i : ts)  System.out.print(i + ' ');  } } 

Izvade
A B C D E Z 

Metodes

Tālāk ir norādītas NavigableSet saskarnē esošās metodes. 

Metodes

Apraksts

 griesti (E e) Atgriež vismazāko elementu šajā kopā, kas ir lielāks vai vienāds ar doto elementu vai nulli, ja tāda nav.
descendingIterator() Atgriež iteratoru pār šīs kopas elementiem dilstošā secībā.
descendingSet() Atgriež šajā komplektā ietverto elementu skatu apgrieztā secībā.
stāvs (E e) Atgriež šīs kopas lielāko elementu, kas ir mazāks vai vienāds ar doto elementu, vai nulli, ja tāda nav.
austiņas (E-Element) Atgriež skatu uz šīs kopas daļu, kuras elementi ir stingri mazāki par toElement.
headSet (ieskaitot Būla vērtību no E līdz Element) Atgriež skatu uz tās šīs kopas daļu, kuras elementi ir mazāki par (vai vienādi ar, ja iekļaujošs ir patiess) elementam Element.
augstāks (E e) Atgriež vismazāko elementu šajā kopā, kas ir stingri lielāks par doto elementu vai nulli, ja tāda nav.
iterators () Atgriež iteratoru pār šīs kopas elementiem augošā secībā.
zemāks (E e) Atgriež šīs kopas lielāko elementu, kas ir stingri mazāks par doto elementu vai nulli, ja tāda nav.
aptaujaFirst() Izgūst un noņem pirmo (zemāko) elementu vai atgriež nulli, ja šī kopa ir tukša.
aptauja Pēdējā() Izgūst un noņem pēdējo (augstāko) elementu vai atgriež nulli, ja šī kopa ir tukša.

apakškopa(E no elementa Būla

mysql nav vienāds

no Iekļaujoša E uz Element Būla uz Iekļaujošu)

Atgriež skatu uz šīs kopas daļu, kuras elementi ir noElement līdzElement.
apakškopa (E no E elementa uz elementu) Atgriež skatu uz šīs kopas daļu, kuras elementi svārstās no elementiem (ieskaitot) līdz tikai elementam.
astes komplekts (E no elementa)Atgriež skatu uz šīs kopas daļu, kuras elementi ir lielāki vai vienādi ar fromElement.
astes komplekts (E no elementa Būla vērtības, ieskaitot)Atgriež skatu uz šīs kopas daļu, kuras elementi ir lielāki par elementu Element (vai vienādi ar, ja ietver ir patiess).

                                                                                                                                              
Metodes, kas mantotas no interfeisa java.util.SortedSet

Metode

Apraksts

salīdzinājums ()  Šī metode atgriež salīdzinātāju, kas izmantots, lai sakārtotu šīs kopas elementus, vai nulli, ja šī kopa izmanto elementu dabisko secību.
pirmais () Šī metode atgriež pirmo (zemāko) elementu, kas atrodas šajā kopā.
pēdējais () Šī metode atgriež pēdējo (augstāko) komplektā esošo elementu.
sadalītājs ()Šīs sakārtotās kopas elementiem izveido sadalītāju.

Metodes, kas mantotas no interfeisa java.util.Set

Metode

Apraksts

pievienot (elements) Šo metodi izmanto, lai komplektam pievienotu noteiktu elementu. Funkcija pievieno elementu tikai tad, ja norādītais elements jau nav iekļauts kopā, pretējā gadījumā funkcija atgriež False, ja elements jau atrodas kopā.
pievienot visu (kolekcija)  Šo metodi izmanto, lai esošajai kopai pievienotu visus elementus no minētās kolekcijas. Elementi tiek pievienoti nejauši, neievērojot īpašu secību.
skaidrs ()   Šo metodi izmanto, lai noņemtu visus elementus no kopas, bet ne izdzēstu kopu. Atsauce uz komplektu joprojām pastāv.
satur (elementu) Šo metodi izmanto, lai pārbaudītu, vai komplektā ir vai nav noteikts elements.
satur visu (kolekcija) 

Šo metodi izmanto, lai pārbaudītu, vai komplektā ir visi dotajā kolekcijā esošie elementi.

kā pārtaisīt Photoshop

Šī metode atgriež vērtību “true”, ja komplektā ir visi elementi, un atgriež vērtību “false”, ja trūkst kāda no elementiem.

vienāds () Salīdzina norādīto objektu ar šo vienlīdzības kopu.
hashCode()  Šī metode tiek izmantota, lai iegūtu hashCode vērtību šai kopas instancei. Tas atgriež vesela skaitļa vērtību, kas ir hashCode vērtība šai kopas instancei.
ir tukšs() Šo metodi izmanto, lai pārbaudītu, vai NavigableSet ir tukšs.
noņemt (elements) Šo metodi izmanto, lai noņemtu doto elementu no kopas. Šī metode atgriež vērtību True, ja norādītais elements atrodas komplektā, pretējā gadījumā tā atgriež vērtību False.
noņemt visu (kolekcija) Šo metodi izmanto, lai no kolekcijas noņemtu visus komplektā esošos elementus. Šī metode atgriež patieso vērtību, ja šī kopa ir mainīta izsaukuma rezultātā.
paturēt visu (kolekcija) Šo metodi izmanto, lai saglabātu visus elementus no kopas, kas ir minēti dotajā kolekcijā. Šī metode atgriež patieso vērtību, ja šī kopa ir mainīta izsaukuma rezultātā.
izmērs () Šo metodi izmanto, lai iegūtu komplekta izmēru. Tas atgriež vesela skaitļa vērtību, kas apzīmē elementu skaitu.
toArray() Šo metodi izmanto, lai izveidotu tādu pašu elementu masīvu kā komplektā.
 toMasīvs(T[] a)Atgriež masīvu, kurā ir visi šīs kopas elementi; atgrieztā masīva izpildlaika veids ir norādītā masīva izpildlaika veids.

Interfeisā java.util.Collection deklarētās metodes

MetodeApraksts
parallelStream()Atgriež, iespējams, paralēlu straumi, kuras avots ir šī kolekcija.
removeIf(Predikātsfiltrs)Noņem visus šīs kolekcijas elementus, kas atbilst norādītajam predikātam.
straume ()Atgriež secīgu straumi, kuras avots ir šī kolekcija.
toArray? (IntFunctionģenerators)Atgriež masīvu, kurā ir visi šīs kolekcijas elementi, izmantojot nodrošināto ģeneratora funkciju, lai piešķirtu atgriezto masīvu.

Interfeisā java.lang.Iterable deklarētās metodes

MetodeApraksts
katram (patērētājsdarbība) Veic norādīto darbību katram iterable elementam, līdz visi elementi ir apstrādāti vai darbība rada izņēmumu.