Pila genérica con restricción de tipo
Java
Medium
generics
Tarea «Pila genérica con restricción de tipo»
Implemente una clase parametrizada GenericStack<T extends Number>, que representa una pila de números (Integer, Double, etc.). La clase debe contener los métodos push(T element), T pop(), T peek() y boolean isEmpty(). Internamente, use un array o ArrayList. En el método main, lea desde la entrada estándar una secuencia de líneas: la primera línea es el tipo de números (Integer o Double), la segunda línea es la cantidad de operaciones n, luego n líneas con operaciones: push <valor>, pop, peek. Para cada operación, muestre el resultado (para pop y peek — el valor, para push — 'ok'). Si la pila está vacía al hacer pop o peek, muestre 'error'.
Formato de entrada
La primera línea es el tipo de números (Integer o Double). La segunda línea es un número entero n (1 ≤ n ≤ 100). Luego n líneas, cada una contiene uno de los comandos: push <número>, pop, peek.
Formato de salida
Para cada comando, muestre el resultado (ok, número o error) en una línea separada.
Ejemplos
Ejemplo 1
ENTRADA
Double
4
push 3.14
peek
pop
pop
SALIDA
ok
3.14
3.14
error
main.java