La classe Stack fait partie du package java.util, qui implémente une structure de données de pile. La classe Stack en Java fonctionne sur le principe du LIFO (Last in First Out). La classe Stack offre des opérations push et pop fondamentales et des fonctionnalités supplémentaires telles que vide, aperçu et recherche. La classe stack fournit différentes méthodes pour effectuer différentes opérations.
Commencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
Syntaxe :
Voici une syntaxe de base sur la façon dont la classe de pile est utilisée en Java :
import java.util.*; // instantiate stack through default constructor Public class Myclass{ // instantiate stack class Stack stack = new Stack(); stack.push(1); // calling push method to insert an element }
La classe Stack fait partie du package java.util, qui étend la classe Vector et implémente l'interface List. La classe Vector est redimensionnable en Java, ce qui signifie qu'elle peut augmenter en taille en cas d'ajout de nouveaux éléments et diminuer en taille après la suppression d'éléments. Étant donné que la classe stack étend le vecteur, elle est également de nature redimensionnable. Pour utiliser une classe de pile, nous devons créer une instance d'une classe de pile via un constructeur. Étant donné que la classe de pile est redimensionnable, un seul constructeur par défaut y est disponible.
Après avoir obtenu l'instance, les méthodes suivantes peuvent être invoquées selon les besoins :
Certains exemples sont donnés ci-dessous :
Nous allons maintenant voir un exemple de code Java de la façon dont les méthodes mentionnées ci-dessus sont utilisées dans la pile.
Code :
//import stack class import java.util.Stack; public class StackDemo { public static void main(String[] args) { // Creating Instance of Stack Stack<String> numbers = new Stack<>(); // stack of type string only string type elements can be inserted // Pushing new elements to the Stack numbers.push("One"); numbers.push("Two"); numbers.push("Three"); numbers.push("Four"); int size= numbers.size(); // finding size of stack System.out.println("Stack contains => " + numbers); System.out.println("Size of Stack is => " + size); System.out.println(); // Popping Elements from the Stack String numbersAtTop = numbers.pop(); // Throws EmptyStackException if the stack is empty System.out.println("Element Removed => " + numbersAtTop); System.out.println("Current State of Stack => " + numbers); size= numbers.size(); System.out.println("Size of Stack is => " + size); System.out.println(); // Get the element at the top of the stack without removing it numbersAtTop = numbers.peek(); System.out.println("Top Most elemement of stack => " + numbersAtTop); System.out.println("Current State of Stack => " + numbers); // searching for an element in stack int index = numbers.search("Two"); System.out.println("Element found at Index " + index); // check if the stack is empty boolean isempty = numbers.empty(); System.out.println("Is Stack Empty => " + isempty); }}
Le programme ci-dessus montre comment différentes opérations telles que push, pop, peek et search, empty peuvent être effectuées sur la classe de pile.
Nous allons maintenant voir comment il peut s'agir d'éléments itérés d'une classe de pile.
Code :
//import stack class import java.util.Stack; //import stream to iterate over stack import java.util.stream.Stream; public class StackDemo { public static void main(String[] args) { // Creating Instance of Stack Stack<String> numbers = new Stack<>(); // stack of type string only string type elements can be inserted // Pushing new elements to the Stack numbers.push("First"); numbers.push("Second"); numbers.push("Third"); numbers.push("Fourth"); System.out.println("Stack contains => " + numbers); System.out.println(); // getting stream object to iterate over elements of stack Stream stream = numbers.stream(); System.out.println("Iterating stack using stream >> "); stream.forEach((item) -> { System.out.println(item); // print item }); } }
Le programme ci-dessus montre comment nous pouvons parcourir les éléments de la pile. Nous devons appeler la méthode stream() sur l'instance de pile, qui renvoie l'objet Stream. Ensuite, nous pouvons parcourir la pile en utilisant la méthode forEach de la classe stream.
Dans cet article, nous avons vu la classe stack. Nous avons également vu comment instancier la classe stack et utiliser différentes méthodes disponibles dans la classe stack. Nous avons observé diverses opérations que l'on peut effectuer à l'aide d'une classe Stack. Les exemples de code Java présentés ci-dessus fournissent une clarté totale sur la classe de pile.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!