Метод Stack set () в Java с примером
Метод set () Java Stack используется для замены любого конкретного элемента в стеке, созданного с помощью класса Stack, другим элементом. Это можно сделать, указав позицию заменяемого элемента и нового элемента в параметре метода set ().
Синтаксис:
общедоступный набор E (индекс int, элемент объекта)
Параметры: эта функция принимает два параметра, как показано в синтаксисе выше и описано ниже.
- index : имеет целочисленный тип и относится к позиции элемента, который должен быть заменен из стека.
- element : это новый элемент, которым будет заменен существующий элемент, имеющий тот же тип объекта, что и стек.
Возвращаемое значение: метод возвращает предыдущее значение из стека, которое заменяется новым значением.
Исключение: этот метод вызывает следующие исключения:
- UnsupportedOperationException : если операция набора не поддерживается этим стеком
- ClassCastException : если класс указанного элемента предотвращает его добавление в этот стек
- NullPointerException : если указанный элемент является нулевым, и этот стек не допускает нулевые элементы
- IllegalArgumentException : если какое-либо свойство указанного элемента препятствует его добавлению в этот стек
- IndexOutOfBoundsException : если индекс вне допустимого диапазона (index = size ())
Программа ниже иллюстрирует метод Java.util.Stack.set ():
Example 1:
// Java code to illustrate set() import java.io.*; import java.util.*; public class StackDemo { public static void main(String args[]) { // Creating an empty Stack Stack<String> stack = new Stack<String>(); // Use add() method to add elements in the stack stack.add( "Geeks" ); stack.add( "for" ); stack.add( "Geeks" ); stack.add( "10" ); stack.add( "20" ); // Displaying the linkedstack System.out.println( "Stack:" + stack); // Using set() method to replace Geeks with GFG System.out.println( "The Object that is replaced is: " + stack.set( 2 , "GFG" )); // Using set() method to replace 20 with 50 System.out.println( "The Object that is replaced is: " + stack.set( 4 , "50" )); // Displaying the modified linkedstack System.out.println( "The new Stack is:" + stack); } } |
Stack:[Geeks, for, Geeks, 10, 20] The Object that is replaced is: Geeks The Object that is replaced is: 20 The new Stack is:[Geeks, for, GFG, 10, 50]
Example 2: To demonstrate IndexOutOfBoundException
// Java code to illustrate set() import java.io.*; import java.util.*; public class StackDemo { public static void main(String args[]) { // Creating an empty Stack Stack<String> stack = new Stack<String>(); // Use add() method to add elements in the stack stack.add( "Geeks" ); stack.add( "for" ); stack.add( "Geeks" ); stack.add( "10" ); stack.add( "20" ); // Displaying the linkedstack System.out.println( "Stack:" + stack); // Using set() method to replace 10th with GFG // and the 10th element does not exist System.out.println( "Trying to replace 10th " + "element with GFG" ); try { stack.set( 10 , "GFG" ); } catch (Exception e) { System.out.println(e); } } } |
Stack:[Geeks, for, Geeks, 10, 20] Trying to replace 10th element with GFG java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 10
Вниманию читателя! Не переставай учиться сейчас. Ознакомьтесь со всеми важными концепциями Java Foundation и коллекций с помощью курса "Основы Java и Java Collections" по доступной для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .