El método clon() de la clase Stack se usa para devolver una copia superficial de esta pila. Simplemente crea una copia de la pila. La copia tendrá una referencia a un clon de la array de datos interna pero no una referencia a la array de datos interna original.
Sintaxis:
Stack.clone()
Parámetros: El método no toma ningún parámetro.
Valor de retorno: el método devuelve un objeto que es solo la copia de la pila.
Excepción: este método lanza CloneNotSupportedException si la clase del objeto no es compatible con la interfaz Cloneable.
Los siguientes programas ilustran el método Java.util.Stack.clone():
Programa 1:
// Java code to illustrate clone() 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 into the Stack stack.add("Welcome"); stack.add("To"); stack.add("Geeks"); stack.add("4"); stack.add("Geeks"); // Displaying the Stack System.out.println("Stack: " + stack); // Creating another Stack to copy Object copy_Stack = stack.clone(); // Displaying the copy of Stack System.out.println("The cloned Stack is: " + copy_Stack); } }
Producción:
Stack: [Welcome, To, Geeks, 4, Geeks] The cloned Stack is: [Welcome, To, Geeks, 4, Geeks]
Programa 2:
// Java code to illustrate clone() import java.util.*; public class StackDemo { public static void main(String args[]) { // Creating an empty Stack Stack<Integer> stack = new Stack<Integer>(); // Use add() method to add elements into the Queue stack.add(10); stack.add(15); stack.add(30); stack.add(20); stack.add(5); // Displaying the Stack System.out.println("Stack: " + stack); // Creating another Stack to copy Object copy_Stack = (Stack)stack.clone(); // Displaying the copy of Stack System.out.println("The cloned Stack is: " + copy_Stack); } }
Producción:
Stack: [10, 15, 30, 20, 5] The cloned Stack is: [10, 15, 30, 20, 5]