Πίνακες VB.Net: Συμβολοσειρά, Δυναμική με ΠΑΡΑΔΕΙΓΜΑΤΑ

Πίνακας περιεχομένων:

Anonim

Τι είναι μια σειρά;

Ένας πίνακας είναι μια δομή δεδομένων που χρησιμοποιείται για την αποθήκευση στοιχείων του ίδιου τύπου δεδομένων. Τα στοιχεία ταξινομούνται διαδοχικά με το πρώτο στοιχείο να βρίσκεται στο ευρετήριο 0 και το τελευταίο στοιχείο στο ευρετήριο n-1, όπου το n είναι ο συνολικός αριθμός στοιχείων στο πίνακα.

Σε αυτό το σεμινάριο, θα μάθετε:

  • Τι είναι μια σειρά;
  • Πώς να δηλώσετε και να προετοιμάσετε μια σειρά
  • Πίνακες σταθερού μεγέθους
  • Δυναμικές συστοιχίες
  • Ανάκτηση των περιεχομένων μιας σειράς
  • Προσθήκη νέων στοιχείων σε μια σειρά
  • Διαγραφή μιας σειράς
  • Η συνάρτηση Split
  • Η συνάρτηση Join

Πώς να δηλώσετε και να προετοιμάσετε μια σειρά

Στο VB.NET, οι πίνακες δηλώνονται χρησιμοποιώντας τη δήλωση Dim. Για παράδειγμα:

Dim myData() As Integer

Στο παραπάνω παράδειγμα, έχουμε ορίσει έναν πίνακα που ονομάζεται myData και θα πρέπει να περιέχει στοιχεία του ακέραιου τύπου δεδομένων. Το ακόλουθο παράδειγμα δείχνει πώς μπορούμε να δηλώσουμε έναν πίνακα για να κρατάμε στοιχεία συμβολοσειράς:

Dim myData(10) As String

Έχουμε ορίσει έναν πίνακα που ονομάζεται myData για να κρατήσουμε 10 χορδές.

Μπορούμε να αρχίσουμε τους πίνακες κατά τη στιγμή της δήλωσής τους. Για παράδειγμα:

Dim myData() As Integer = {11, 12, 22, 7, 47, 32}

Έχουμε δηλώσει τον πίνακα myData και προσθέσαμε 6 ακέραια στοιχεία σε αυτό. Αυτό μπορεί επίσης να γίνει για την περίπτωση χορδών:

Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}

Δημιουργήσαμε έναν πίνακα με όνομα μαθητές και προσθέσαμε 5 ονόματα σε αυτό.

Πίνακες σταθερού μεγέθους

Ένας πίνακας σταθερού μεγέθους περιέχει έναν σταθερό αριθμό στοιχείων. Αυτό σημαίνει ότι πρέπει να ορίσετε τον αριθμό των στοιχείων που θα διατηρήσει κατά τον ορισμό του. Ας υποθέσουμε ότι χρειάζεστε έναν πίνακα για να κρατήσετε μόνο 3 ονόματα μαθητών. Μπορείτε να ορίσετε και να αρχικοποιήσετε τον πίνακα ως εξής:

Dim students(0 to 2) As Stringstudents(0) = "John"students (1) = "Alice"students (2) = "Antony"

Ξεκινήσαμε δηλώνοντας έναν πίνακα συμβολοσειρών με όνομα μαθητές. Το 0 έως 2 δηλώνει ότι ο πίνακας θα αποθηκεύει στοιχεία από το ευρετήριο 0 έως το ευρετήριο 2, που σημαίνει ότι θα έχουμε συνολικά 3 στοιχεία.

Για να προσθέσουμε στοιχεία στον πίνακα, χρησιμοποιήσαμε το όνομα του πίνακα και καθορίσαμε το ευρετήριο στο οποίο θα αποθηκευτεί το στοιχείο. Για παράδειγμα, το όνομα John θα αποθηκευτεί στο ευρετήριο 0 του πίνακα, πράγμα που σημαίνει ότι θα αποτελέσει το πρώτο στοιχείο του πίνακα. Ο Antony θα είναι το τελευταίο στοιχείο του πίνακα.

Δυναμικές συστοιχίες

Αυτός είναι ένας πίνακας που μπορεί να χωρέσει οποιονδήποτε αριθμό στοιχείων. Το μέγεθος του πίνακα μπορεί να αυξηθεί ανά πάσα στιγμή. Αυτό σημαίνει ότι μπορείτε να προσθέσετε νέα στοιχεία στον πίνακα όποτε θέλουμε. Για να το αποδείξουμε αυτό, ας καθορίσουμε πρώτα έναν πίνακα ακεραίων:

Dim nums() As Integer

Έχουμε ορίσει έναν ακέραιο πίνακα που ονομάζεται nums. Τώρα πρέπει να προσθέσετε δύο στοιχεία στον πίνακα, δίνοντας χώρο για αλλαγή μεγέθους. Πρέπει να χρησιμοποιήσετε τη δήλωση ReDim ως εξής:

ReDim nums(1)nums(0) = 12nums(1) = 23

Ο πίνακας μας έχει τώρα δύο στοιχεία στα ευρετήρια 0 και 1. Πρέπει να προσθέσουμε ένα τρίτο στοιχείο σε αυτό στο ευρετήριο 3 διατηρώντας ταυτόχρονα τα δύο στοιχεία που έχει ήδη. Μπορούμε να το κάνουμε ως εξής:

ReDim Preserve nums(2)nums(2) = 35

Ο πίνακας έχει τώρα τρία στοιχεία.

Ανάκτηση των περιεχομένων μιας σειράς

Ανάκτηση σημαίνει πρόσβαση στα στοιχεία του πίνακα. Για πρόσβαση σε ένα στοιχείο πίνακα, χρησιμοποιούμε το ευρετήριό του. Ας το αποδείξουμε χρησιμοποιώντας ένα παράδειγμα.

Βήμα 1) Ξεκινήστε δημιουργώντας μια νέα εφαρμογή κονσόλας.

Βήμα 2) Προσθέστε τον ακόλουθο κώδικα στην εφαρμογή:

Module Module1Sub Main()Dim students(0 to 2) As Stringstudents(0) = "John"students(1) = "Alice"students(2) = "Antony"Console.WriteLine("First student is {0} ", students(0))Console.WriteLine("Second student is {0} ", students(1))Console.WriteLine("Third student is {0} ", students(2))Console.ReadKey()End SubEnd Module

Βήμα 3) Εκτελέστε τον κώδικα κάνοντας κλικ στο κουμπί Έναρξη από τη γραμμή εργαλείων. Θα λάβετε το ακόλουθο παράθυρο:

Έχουμε χρησιμοποιήσει τον ακόλουθο κωδικό:

Επεξήγηση του κώδικα:

  1. Δημιουργία μονάδας με το όνομα Module1.
  2. Δημιουργία της κύριας υπο-διαδικασίας.
  3. Δημιουργία πίνακα με μαθητές για την αποθήκευση στοιχείων συμβολοσειράς. Ο πίνακας θα αποθηκεύσει στοιχεία από το ευρετήριο 0 έως το ευρετήριο 2, που σημαίνει ότι θα έχει συνολικά 3 στοιχεία.
  4. Προσθέτοντας το όνομα John ως το πρώτο στοιχείο του πίνακα, δηλαδή, ο John αποθηκεύτηκε στο ευρετήριο 0.
  5. Προσθέτοντας το όνομα Alice ως το δεύτερο στοιχείο του πίνακα, δηλαδή, η Alice αποθηκεύτηκε στο ευρετήριο 1.
  6. Προσθέτοντας το όνομα Antony ως το τρίτο στοιχείο του πίνακα, δηλαδή, ο Antony αποθηκεύτηκε στο ευρετήριο 2.
  7. Εκτύπωση κάποιου κειμένου και του στοιχείου που είναι αποθηκευμένο στο ευρετήριο 0 των μαθητών του πίνακα στην κονσόλα. Οι μαθητές (0) μας βοηθούν να αποκτήσουμε πρόσβαση στο στοιχείο στο ευρετήριο 0 του πίνακα που ονομάζεται μαθητές.
  8. Εκτύπωση κάποιου κειμένου και του στοιχείου που είναι αποθηκευμένο στο ευρετήριο 1 των μαθητών του πίνακα στην κονσόλα. Οι μαθητές (1) μας βοηθούν να αποκτήσουμε πρόσβαση στο στοιχείο στο ευρετήριο 1 του πίνακα που ονομάζεται μαθητές.
  9. Εκτύπωση κάποιου κειμένου και του στοιχείου που είναι αποθηκευμένο στο ευρετήριο 2 των μαθητών του πίνακα στην κονσόλα. Οι μαθητές (2) μας βοηθούν να αποκτήσουμε πρόσβαση στο στοιχείο στο ευρετήριο 2 του πίνακα που ονομάζεται μαθητές.
  10. Παύση της αναμονής του παραθύρου της κονσόλας ή του χρήστη για να το κάνει για να το κλείσει.
  11. Λήξη της υπο-διαδικασίας.
  12. Τέλος της ενότητας.

Προσθήκη νέων στοιχείων σε μια σειρά

Αυτό θα συμβεί μόνο εάν έχετε δυναμικό πίνακα. Εάν είχατε δηλώσει έναν πίνακα διαστάσεων σταθερού μεγέθους και είναι γεμάτος από στοιχεία πίνακα, δεν μπορείτε να προσθέσετε νέα στοιχεία σε αυτόν. Το ακόλουθο παράδειγμα δείχνει πώς μπορείτε να προσθέσετε νέα στοιχεία σε μια δυναμική συστοιχία:

Βήμα 1) Ξεκινήστε δημιουργώντας μια νέα εφαρμογή κονσόλας.

Βήμα 2) Προσθέστε τον ακόλουθο κώδικα στην εφαρμογή:

Module Module1Sub Main()Dim nums() As IntegerReDim nums(1)nums(0) = 12nums(1) = 23For x = 0 To nums.Length - 1Console.WriteLine("Initial array element: {0}", nums(x))NextReDim Preserve nums(2)nums(2) = 35For x = 0 To nums.Length - 1Console.WriteLine("Final array element: {0}", nums(x))NextConsole.ReadKey()End SubEnd Module

Βήμα 3) Κάντε κλικ στο κουμπί Έναρξη από τη γραμμή εργαλείων για να εκτελέσετε τον κώδικα. Θα πρέπει να λάβετε το ακόλουθο παράθυρο:

Έχουμε χρησιμοποιήσει τον ακόλουθο κωδικό:

Επεξήγηση του κώδικα:

  1. Δημιουργία μονάδας με το όνομα Module1.
  2. Δημιουργία της κύριας υπο-διαδικασίας.
  3. Δημιουργία ενός πίνακα με αριθμούς για να διατηρούν ακέραιες τιμές.
  4. Προσδιορίζοντας ότι ο παραπάνω πίνακας θα αποθηκεύσει δύο στοιχεία, δηλαδή, στο ευρετήριο 0 και 1, ενώ επιτρέπει χώρο για αλλαγή μεγέθους.
  5. Προσθήκη του στοιχείου 12 στο ευρετήριο 0 των αριθμών του πίνακα.
  6. Προσθήκη του στοιχείου 23 στο ευρετήριο 1 των αριθμών του πίνακα.
  7. Χρησιμοποιώντας ένα για βρόχο για να δημιουργήσετε μια μεταβλητή x για να μας βοηθήσετε να επαναλάβουμε από το πρώτο έως το τελευταίο στοιχείο των αριθμών του πίνακα. Σημειώστε ότι ο πίνακας έχει τώρα δύο στοιχεία, 12 και 23.
  8. Εκτύπωση κάποιου κειμένου και των στοιχείων του πίνακα στην κονσόλα.
  9. Τερματισμός του βρόχου και μετάβαση στο επόμενο μέρος του κώδικα.
  10. Αλλάξτε το μέγεθος των αριθμών του πίνακα για να επιτρέψετε στοιχεία στους δείκτες 0 έως 2. Τώρα θα είναι σε θέση να αποθηκεύσει 3 στοιχεία αντί για 2. Η λέξη-κλειδί Preserve μας βοηθά να διατηρήσουμε τα τρέχοντα στοιχεία του πίνακα, δηλαδή, 12 και 23.
  11. Προσθήκη του στοιχείου 35 στο ευρετήριο 2 του πίνακα. Ο πίνακας έχει τώρα τρία στοιχεία, 12, 23 και 35.
  12. Χρησιμοποιώντας ένα για βρόχο για να δημιουργήσετε μια μεταβλητή x για να μας βοηθήσετε να επαναλάβουμε από το πρώτο έως το τελευταίο στοιχείο των αριθμών του πίνακα. Σημειώστε ότι ο πίνακας έχει τώρα τρία στοιχεία, 12, 23 και 35.
  13. Εκτύπωση κάποιου κειμένου και των στοιχείων του πίνακα στην κονσόλα.
  14. Τερματισμός του βρόχου και μετάβαση στο επόμενο μέρος του κώδικα.
  15. Παύση του παραθύρου της κονσόλας περιμένοντας ο χρήστης να προβεί σε ενέργειες για να το κλείσει.
  16. Λήξη της υπο-διαδικασίας.
  17. Τέλος της ενότητας.

Διαγραφή μιας σειράς

Συνιστάται να διαγράψετε τον πίνακα σας αφού τελειώσετε με αυτόν, κυρίως όταν ασχολείστε με έναν δυναμικό πίνακα. Αυτό θα σας βοηθήσει να ελευθερώσετε λίγο χώρο μνήμης.

Για να διαγράψετε έναν πίνακα, απλώς πρέπει να καλέσετε τη δήλωση Διαγραφή ακολουθούμενη από το όνομα του πίνακα. Για παράδειγμα:

Dim nums(1) As Integernums(0) = 12nums(1) = 23Erase nums

Έχουμε δηλώσει μια σειρά από ακέραιους αριθμούς και προσθέσαμε δύο στοιχεία σε αυτό. Η δήλωση Διαγραφή αριθμών θα διαγράψει τον πίνακα.

Η συνάρτηση Split

Η συνάρτηση split που παρέχεται από τη Visual Basic .NET μας βοηθά να χωρίσουμε μια συμβολοσειρά σε μέρη και να τις διατηρήσουμε σε πίνακα. Το ακόλουθο παράδειγμα δείχνει πώς να χρησιμοποιήσετε αυτήν τη λειτουργία:

Βήμα 1) Δημιουργήστε μια νέα εφαρμογή κονσόλας.

Βήμα 2) Προσθέστε τον ακόλουθο κώδικα στην εφαρμογή:

Module Module1Sub Main()Dim myarray() As StringDim guru99 As StringDim x As Integerguru99 = "Welcome, to, Guru99"myarray = Split(guru99, ", ")For x = LBound(myarray) To UBound(myarray)Console.WriteLine(myarray(x))NextConsole.ReadKey()End SubEnd Module

Βήμα 3) Εκτελέστε τον κώδικα κάνοντας κλικ στο κουμπί Έναρξη από τη γραμμή εργαλείων. Θα πρέπει να λάβετε το ακόλουθο παράθυρο:

Έχουμε χρησιμοποιήσει τον ακόλουθο κωδικό:

Επεξήγηση του κώδικα:

  1. Δημιουργία μονάδας με το όνομα Module1.
  2. Έναρξη της κύριας διαδικασίας.
  3. Δημιουργία ενός πίνακα που ονομάζεται myarray για τη διατήρηση τιμών συμβολοσειράς.
  4. Δημιουργία μεταβλητής συμβολοσειράς με το όνομα guru99.
  5. Δημιουργία ακέραιας μεταβλητής με το όνομα x.
  6. Αντιστοίχιση συμβολοσειράς στη μεταβλητή γκουρού99.
  7. Χωρίζοντας το String παραπάνω σε μέρη και τοποθετώντας τα στη σειρά που ονομάζεται myarray. Το "," (κόμμα) είναι οριοθέτης, επομένως η συνάρτηση split θα το χρησιμοποιήσει για να σηματοδοτήσει το τέλος των διαφόρων τμημάτων του String.
  8. Χρησιμοποιώντας τη μεταβλητή x για να επαναλάβουμε τον πίνακα που ονομάζεται myarray. Το LBound και το UBound καθορίζουν τα κατώτερα όρια και τα ανώτερα όρια του πίνακα, αντίστοιχα.
  9. Εκτύπωση των τιμών του πίνακα που ονομάζεται myarray στην κονσόλα.
  10. Τερματισμός του για βρόχο και

Η συνάρτηση Join

Η συνάρτηση σύνδεσης μας βοηθά να ενώσουμε πολλές συστοιχίες σε μία συμβολοσειρά. Το ακόλουθο παράδειγμα το αποδεικνύει:

Βήμα 1) Ξεκινήστε δημιουργώντας μια νέα εφαρμογή κονσόλας.

Βήμα 2) Προσθέστε τον ακόλουθο κώδικα στην εφαρμογή:

Module Module1Sub Main()Dim students(0 To 2) As Stringstudents(0) = "John"students(1) = "Alice"students(2) = "Antony"Dim classmates As Stringclassmates = Join(students, ", ")Console.WriteLine(classmates)Console.ReadKey()End SubEnd Module

Βήμα 3) Εκτελέστε τον κώδικα κάνοντας κλικ στο κουμπί Έναρξη στη γραμμή εργαλείων:

Έχουμε χρησιμοποιήσει τον ακόλουθο κωδικό:

Επεξήγηση του κώδικα:

  1. Δημιουργία μονάδας με το όνομα Module1.
  2. Δημιουργία της κύριας υπο-διαδικασίας.
  3. Δημιουργία ενός πίνακα με όνομα μαθητών για τη διατήρηση 3 τιμών συμβολοσειράς.
  4. Προσθήκη του ονόματος John στο ευρετήριο 0 του πίνακα.
  5. Προσθήκη του ονόματος Alice στο ευρετήριο 1 του πίνακα.
  6. Προσθήκη του ονόματος Antony στο ευρετήριο 2 του πίνακα.
  7. Ορισμός μιας μεταβλητής που ονομάζεται συμμαθητές του τύπου δεδομένων συμβολοσειράς.
  8. Σύνδεση όλων των στοιχείων των μαθητών του πίνακα και διαχωρισμός τους χρησιμοποιώντας ένα, (κόμμα). Το αποτέλεσμα αυτής της λειτουργίας θα ανατεθεί στους μεταβλητούς συμμαθητές.
  9. Εκτύπωση του περιεχομένου της μεταβλητής συμμαθητών στην κονσόλα.
  10. Παύση του παραθύρου της κονσόλας περιμένοντας ο χρήστης να λάβει μέτρα για να το κλείσει.
  11. Τερματισμός της κύριας υπο-διαδικασίας.
  12. Τερματισμός της ενότητας.

Περίληψη

  • Οι πίνακες χρησιμοποιούνται για την αποθήκευση στοιχείων δεδομένων που ανήκουν στον ίδιο τύπο δεδομένων.
  • Ένας δυναμικός πίνακας επιτρέπει στο χρήστη να αλλάξει το μέγεθός του προσθέτοντας περισσότερα στοιχεία σε αυτό. Χρησιμοποιείτε την εντολή ReDim για την προσθήκη στοιχείων σε έναν υπάρχοντα πίνακα
  • Δεν είναι δυνατή η αλλαγή του μεγέθους ενός πίνακα σταθερού μεγέθους.
  • Τα στοιχεία του πίνακα ταξινομούνται χρησιμοποιώντας ευρετήρια, με το πρώτο στοιχείο να βρίσκεται στο ευρετήριο 0 και το τελευταίο στοιχείο στο ευρετήριο n-1, όπου n είναι ο συνολικός αριθμός στοιχείων πίνακα.
  • Οι πίνακες μπορούν να διαγραφούν χρησιμοποιώντας τη λειτουργία Διαγραφή
  • Μπορείτε να χρησιμοποιήσετε τις λειτουργίες split και join για να χωρίσετε ή να ενώσετε έναν πίνακα συμβολοσειρών αντίστοιχα