Sobes.tech
Junior

Τι είναι το ArrayList;

sobes.tech AI

Απάντηση από AI

ArrayList είναι μια μεταβλητή συλλογή που βασίζεται σε πίνακα. Υλοποιεί τη διεπαφή List και παρέχει μια δυναμική λίστα αντικειμένων, όπου το μέγεθος μπορεί να αυξάνεται ή να μειώνεται καθώς προστίθενται ή διαγράφονται στοιχεία.

Βασικά χαρακτηριστικά:

  • Τυχαία πρόσβαση: Τα στοιχεία είναι προσβάσιμα μέσω δείκτη σε χρόνο O(1).
  • Δυναμικό μέγεθος: Όταν προστίθενται στοιχεία και ο εσωτερικός πίνακας είναι γεμάτος, δημιουργείται ένας νέος πίνακας μεγαλύτερου μεγέθους και τα παλιά στοιχεία αντιγράφονται σε αυτόν.
  • Δεν είναι ασφαλές για νήματα: Αν απαιτείται η χρήση σε περιβάλλον πολλαπλών νημάτων, χρειάζεται συγχρονισμός, π.χ. με Collections.synchronizedList().
  • Καλύτερα για: Συχνές λειτουργίες ανάγνωσης και σπάνιες λειτουργίες εισαγωγής/διαγραφής στη μέση της λίστας.

Παράδειγμα δημιουργίας και χρήσης:

List<String> list = new ArrayList<>();
list.add("Στοιχείο 1");
list.add("Στοιχείο 2");
String element = list.get(0); // Πρόσβαση μέσω δείκτη

System.out.println(element);