Java Stack的set()方法用于将使用Stack类创建的堆栈中的任何特定元素替换为另一个元素。这可以通过在set()方法的参数中指定要替换的元素的位置和新元素来完成。
用法:
public E set(int index, Object element)
参数:该函数接受两个参数,如上面的语法所示,如下所述。
- index:这是整数类型,是指要从堆栈中替换的元素的位置。
- element:这是新元素,现有元素将被替换,并且与堆栈具有相同的对象类型。
返回值:该方法从堆栈中返回由新值替换的先前值。
异常:此方法引发以下异常:
- UnsupportedOperationException:如果此堆栈不支持设置操作
- ClassCastException:如果指定元素的类阻止将其添加到此堆栈中
- NullPointerException :如果指定的元素为null,并且此堆栈不允许使用null元素
- IllegalArgumentException:如果指定元素的某些属性阻止将其添加到此堆栈中
- IndexOutOfBoundsException:如果索引超出范围(索引= size())
以下示例程序旨在说明Java.util.Stack.set()方法:
示例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]
示例2:演示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 Stack pop()用法及代码示例
- Java Stack contains()用法及代码示例
- Java Stack get()用法及代码示例
- Java Stack toArray(T[])用法及代码示例
- Java Stack setElementAt()用法及代码示例
- Java Stack removeRange()用法及代码示例
- Java Stack isEmpty()用法及代码示例
- Java Stack empty()用法及代码示例
- Java Stack insertElementAt()用法及代码示例
- Java Stack elementAt()用法及代码示例
- Java Stack toString()用法及代码示例
- Java Stack firstElement()用法及代码示例
- Java Stack ensureCapacity()用法及代码示例
- Java Stack subList()用法及代码示例
- Java Stack size()用法及代码示例
注:本文由纯净天空筛选整理自Code_r大神的英文原创作品 Stack set() method in Java with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。