Sobes.tech
Senior
48

Wie macht man einen Stack universell, um nicht nur mit Integer, sondern auch mit String und benutzerdefinierten Objekten zu arbeiten?

Unternehmen wurden gefragt
солюшин

Antwort von AI

sobes.tech KI

Чтобы сделать стек универсальным и работать с любыми типами данных (Integer, String, кастомные объекты), в Java используют обобщения (generics).

Пример универсального стека:

public class Stack<T> {
    private List<T> elements = new ArrayList<>();

    public void push(T item) {
        elements.add(item);
    }

    public T pop() {
        if (elements.isEmpty()) {
            throw new EmptyStackException();
        }
        return elements.remove(elements.size() - 1);
    }

    public boolean isEmpty() {
        return elements.isEmpty();
    }
}

Теперь можно создавать стек для любого типа:

Stack<Integer> intStack = new Stack<>();
Stack<String> stringStack = new Stack<>();
Stack<MyObject> objectStack = new Stack<>();