Senior
Πώς να κάνετε μια στοίβα καθολική για εργασία όχι μόνο με Integer, αλλά και με String και προσαρμοσμένα αντικείμενα;
sobes.tech AI
Απάντηση από AI
Για να κάνετε μια στοίβα καθολική και να λειτουργεί με οποιοδήποτε τύπο δεδομένων (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<>();