Java-pino-luokka

Tässä opetusohjelmassa opitaan Java Stack -luokasta ja sen menetelmistä esimerkkien avulla.

Java-kokoelmakehyksessä on nimetty luokka, Stackjoka tarjoaa pinon tietorakenteen toiminnallisuuden.

StackLuokka ulottuu Vectorluokka.

Pinon toteutus

Pino, elementit tallennetaan ja niihin pääsee Last In First Out -menetelmällä. Toisin sanoen elementit lisätään pinon yläosaan ja poistetaan pinon yläosasta.

Pinon luominen

Jotta voimme luoda pinon, meidän on java.util.Stackensin tuotava paketti. Kun tuot paketin, voimme näin luoda pinon Java-tiedostoon.

 Stack stacks = new Stack(); 

Tässä Typeilmoitetaan pinon tyyppi. Esimerkiksi,

 // Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack(); 

Pinoamismenetelmät

Koska se Stacklaajentaa Vectorluokkaa, se perii kaikki menetelmät Vector. Lisätietoja eri Vectormenetelmistä on Java Vector Class -sivustolla.

Näiden menetelmien lisäksi Stackluokka sisältää 5 muuta menetelmää, jotka erottavat sen Vector.

push () -menetelmä

Elementin lisääminen pinon yläosaan käytämme push()menetelmää. Esimerkiksi,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); ) ) 

Tuotos

 Pino: (Koira, Hevonen, Kissa) 

pop () Menetelmä

Elementin poistamiseksi pinon yläosasta käytämme pop()menetelmää. Esimerkiksi,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Initial Stack: " + animals); // Remove element stacks String element = animals.pop(); System.out.println("Removed Element: " + element); ) ) 

Tuotos

 Alkuperäinen pino: (koira, hevonen, kissa) poistettu elementti: kissa 

kurkistaa () menetelmä

peek()Menetelmä palauttaa objektin pinon päälle. Esimerkiksi,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Access element from the top String element = animals.peek(); System.out.println("Element at top: " + element); ) ) 

Tuotos

 Pino: (koira, hevonen, kissa) yläosa: kissa 

haku () menetelmä

Jos haluat etsiä elementtiä pinosta, käytämme search()menetelmää. Se palauttaa elementin sijainnin pinon yläosasta. Esimerkiksi,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Search an element int position = animals.search("Horse"); System.out.println("Position of Horse: " + position); ) ) 

Tuotos

 Pino: (koira, hevonen, kissa) hevosen sijainti: 2 

tyhjä () Menetelmä

Tarkastamme, onko pino tyhjä vai ei, käytämme empty()menetelmää. Esimerkiksi,

 import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Check if stack is empty boolean result = animals.empty(); System.out.println("Is the stack empty? " + result); ) ) 

Tuotos

Pino: (Koira, Hevonen, Kissa) Onko pino tyhjä? väärä

Käytä ArrayDeque -pinoa

StackLuokka antaa suoraan toteuttamiseen pinon tietorakenteen. On kuitenkin suositeltavaa olla käyttämättä sitä. Sen sijaan käytä ArrayDequeluokkaa (toteuttaa Dequekäyttöliittymä) pino-tietorakenteen toteuttamiseksi Java- sovelluksessa .

Lisätietoja on osoitteessa

  • Java ArrayDeque
  • Miksi käyttää Dequea Stackin päällä?

Mielenkiintoisia artikkeleita...