当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Stack set()用法及代码示例


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


相关用法


注:本文由纯净天空筛选整理自Code_r大神的英文原创作品 Stack set() method in Java with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。