Collabora Office 24.04 Βοήθεια
Οι συλλογές μπορούν να χρησιμοποιηθούν για την αποθήκευση στοιχείων διαφορετικών τύπων. Κάθε στοιχείο μπορεί να προσπελαστεί από το δείκτην του ή από ένα προαιρετικό κλειδί που σχετίζεται με αυτό.
Ένα αντικείμενο Collection (Συλλογή) έχει τις ακόλουθες μεθόδους:
Add: (Προσθήκη) εισάγει ένα νέο στοιχείο στη συλλογή. Προαιρετικά, μια τιμή συμβολοσειράς μπορεί να οριστεί ως το κλειδί για το στοιχείο.
Count: (πλήθος) επιστρέφει τον αριθμό των στοιχείων στη συλλογή.
Item: (Στοιχείο) επιστρέφει το στοιχείο στη συλλογή περνώντας τον δείκτη ή το κλειδί του.
Remove: (Αφαίρεση) αφαιρεί το καθορισμένο στοιχείο από τη συλλογή με τον δείκτη ή το κλειδί του.
Τα στοιχεία μιας Συλλογής μπορούν να προσπελαστούν είτε από τους δείκτες τους (όπως σε έναν μονοδιάστατο πίνακα που βασίζεται σε 1) είτε από τα συσχετισμένα κλειδιά τους.
Η υπηρεσία ScriptForge Dictionary επεκτείνει το αντικείμενο Collection παρέχοντας συμπληρωματικά χαρακτηριστικά όπως ανάκτηση και αντικατάσταση κλειδιού, καθώς και εισαγωγή/εξαγωγή σε αντικείμενα πίνακα και συμβολοσειρές JSON.
Για να δημιουργήσετε μια Collection (Συλλογή) χρησιμοποιήστε τη λέξη-κλειδί New (Νέα). Το παρακάτω παράδειγμα δημιουργεί ένα αντικείμενο Collection και το συμπληρώνει με τρία στοιχεία:
Dim myCollection as New Collection
myCollection.Add("Some text")
myCollection.Add(100)
myCollection.Add(Array(1, 2, 3, 4))
MsgBox myCollection.Count ' 3
Η μέθοδος Add (Προσθήκη) μπορεί να χρησιμοποιηθεί για την προσθήκη νέων στοιχείων στο αντικείμενο Collection (Συλλογή).
oCollection.Add(item, [key], [before|after])
item: (στοιχείο) το στοιχείο που θα προστεθεί στη Collection (Συλλογή). Μπορεί να είναι οποιουδήποτε τύπου.
key: (κλειδί) τιμή συμβολοσειράς που χρησιμοποιείται ως το μοναδικό κλειδί για τον προσδιορισμό αυτής της τιμής.
before, after: (πριν, μετά) προαιρετικό όρισμα λέξης-κλειδιού που υποδεικνύει πού θα τοποθετηθεί το νέο στοιχείο στη Collection (Συλλογή). Μόνο ένα από τα ορίσματα before ή after μπορεί να καθοριστεί για τον προσδιορισμό του ευρετηρίου ή του κλειδιού πριν από το οποίο (ή μετά από αυτό) θα τοποθετηθεί το νέο στοιχείο.
Το παρακάτω παράδειγμα προσθέτει δύο στοιχεία σε μια Collection (Συλλογή). Το πρώτο έχει ένα κλειδί που σχετίζεται με αυτό, ενώ το δεύτερο όχι.
Dim myCollection as New Collection
myCollection.Add(100, "first")
myCollection.Add(101)
Η μέθοδος Add (Προσθήκη) υποστηρίζει επίσης ορίσματα λέξεων-κλειδιών:
myCollection.Add(item := 100, key := "first")
Τα κλειδιά πρέπει να είναι μοναδικά σε ένα αντικείμενο Collection (Συλλογή). Η σύγκριση μεταξύ των κλειδιών είναι case-insensitive (χωρίς διάκριση πεζών-κεφαλαίων). Η προσθήκη διπλών κλειδιών θα οδηγήσει σε σφάλμα χρόνου εκτέλεσης.
Το παρακάτω παράδειγμα δείχνει πώς να χρησιμοποιήσετε τα ορίσματα λέξης-κλειδιού Before (Πριν) και After (Μετά) για να προσδιορίσετε τη θέση του στοιχείου που προστίθεται.
Dim myCollection as Variant
myCollection = New Collection
myCollection.Add(item := 101, key := "first")
myCollection.Add(item := 103, key := "third")
myCollection.Add(item := 105, key := "fifth")
MsgBox myCollection.Item(2) ' 103
myCollection.Add(item := 102, key := "second", before := "third")
MsgBox myCollection.Item(2) ' 102
myCollection.Add(item := 104, key := "fourth", after := 3)
MsgBox myCollection.Item(4) ' 104
Στα στοιχεία σε ένα αντικείμενο Collection (Συλλογή) εκχωρείται μια ακέραια τιμή ευρετηρίου που ξεκινά από το 1 και αντιστοιχεί στη σειρά με την οποία προστέθηκαν.
Χρησιμοποιήστε τη μέθοδο Item για να προσπελάσετε ένα δεδομένο στοιχείο μέσω του ευρετηρίου ή του κλειδιού του.
oCollection.Item(index)
oCollection.Item(key)
index: (ευρετήριο) μια ακέραια τιμή που καθορίζει το ευρετήριο του στοιχείου που θα επιστραφεί.
key: (κλειδί) μια τιμή συμβολοσειράς που καθορίζει το κλειδί του στοιχείου που θα επιστραφεί.
Dim myCollection as New Collection
myCollection.Add(item := 101, key := "A")
myCollection.Add(item := 102, key := "B")
myCollection.Add(item := 103, key := "C")
MsgBox myCollection.Item("A") ' 101
MsgBox myCollection.Item(3) ' 103
Χρησιμοποιήστε τη μέθοδο Remove (Αφαίρεση) για να διαγράψετε στοιχεία από ένα αντικείμενο Collection (Συλλογή).
Τα στοιχεία μπορούν να αφαιρεθούν είτε από τα ευρετήρια τους είτε με τις βασικές τους τιμές.
oCollection.Remove(index)
oCollection.Remove(key)
index: (ευρετήριο) μια ακέραιη τιμή που καθορίζει το ευρετήριο του στοιχείου που θα αφαιρεθεί.
key: (κλειδί) μια τιμή συμβολοσειράς που καθορίζει το κλειδί του στοιχείου που θα αφαιρεθεί.
Dim myCollection as New Collection
myCollection.Add(item := 101, key := "first")
myCollection.Add(item := 102, key := "second")
myCollection.Add(item := 103, key := "third")
MsgBox myCollection.Count ' 3
' Removes the first value
myCollection.Remove(1)
' Removes the value whose key is "third"
myCollection.Remove("third")
MsgBox myCollection.Count ' 1
Είναι δυνατό να χρησιμοποιήσετε μια πρόταση For Each ... Next (Για κάθε ... Επόμενο) για να επαναλάβετε όλα τα στοιχεία σε μια Collection (Συλλογή).
Dim myCollection as New Collection
myCollection.Add(item := 101, key := "A")
myCollection.Add(item := 102, key := "B")
myCollection.Add(item := 103, key := "C")
For Each value In myCollection
MsgBox value
Next value
Για να αφαιρέσετε όλα τα στοιχεία από ένα αντικείμενο Collection (Συλλογή) καλέστε τη μέθοδο Remove (Αφαίρεση)για κάθε στοιχείο, όπως φαίνεται στο παρακάτω παράδειγμα:
' Δημιουργήστε μια συλλογή δείγματος με δύο καταχωρήσεις
Dim myCollection as New Collection
myCollection.Add(item := 10, key := "A")
myCollection.Add(item := 11, key := "B")
MsgBox myCollection.Count ' 2
' Αφαιρεί όλα τα στοιχεία της συλλογής
For i = myCollection.Count To 1 Step -1
myCollection.Remove(i)
Next i
MsgBox myCollection.Count ' 0