C# 'Array' εναντίον 'List': Διαφορές και οφέλη

C Array Enantion List Diaphores Kai Ophele



' Πίνακες ' και ' Κονίστρα ' χρησιμοποιούνται για την αποθήκευση των δεδομένων. Ο τύπος του 'array' είναι σταθερός και δεν μπορούμε να βάλουμε αντικείμενα άλλου τύπου σε αυτόν. Ωστόσο, το 'List' έχει γενικούς τύπους και είναι ελεύθερου μεγέθους. Οι χρήστες μπορούν επίσης να ορίσουν τον τύπο της λίστας τη στιγμή της δήλωσης. Δεν μπορούν να τροποποιήσουν πίνακες κατά την εκτέλεση. Κατά την προετοιμασία ενός πίνακα, το μέγεθος ενός πίνακα αρχικοποιείται και δεν μπορούν να βάλουν αντικείμενα μεγαλύτερα από αυτό το μέγεθος. Τα ευρετήρια χρησιμοποιούνται για την αποθήκευση αντικειμένων σε πίνακες και λίστες. Οι λίστες είναι δυναμικής φύσης, γι' αυτό μπορούν να αλλάξουν το μέγεθός τους. Η λίστα χρησιμοποιεί ευρετήρια και βρόχους.

Σε αυτόν τον οδηγό, θα μιλήσουμε για τις διαφορές και τα οφέλη του ' Πίνακες ' και ' Κονίστρα ” σε C#.

Πίνακες σε C#

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







Η σύνταξη του πίνακα είναι:



Τύπος δεδομένων [ ] όνομα πίνακα ;

Ας δούμε ένα παράδειγμα πίνακα:



χρησιμοποιώντας το Σύστημα ;

Χώρος ονομάτων CSharpArrayExample

{

Ονόματα δημόσιας τάξης

{

στατικός κενός Κύριος ( σειρά [ ] args )

{

σειρά [ ] ονόματα = { 'Ή' , 'Μπουσρα' , 'Αρχή' , 'Φαουάντ' } ;

Κονσόλα. WriteLine ( 'Το στοιχείο στο ευρετήριο 1 είναι:' + ονόματα [ 1 ] ) ;

Κονσόλα. WriteLine ( 'Τα στοιχεία του πίνακα είναι:' ) ;

Για ( ενθ δείκτης = 0 ; δείκτης < ονόματα. Μήκος ; δείκτης ++ )

{

Κονσόλα. WriteLine ( ονόματα [ δείκτης ] ) ;

}

Κονσόλα. ReadKey ( ) ;

}

}

}

Στο παραπάνω περιγραφόμενο παράδειγμα:





  • Αρχικά, προσθέστε τις απαιτούμενες βιβλιοθήκες χώρου ονομάτων με το όνομα ' Σύστημα ' και ' SharpArrayExample '.
  • Στη συνέχεια, δηλώστε μια τάξη με το όνομα ' Ονόματα ” στο οποίο θέλουμε να αποθηκεύσουμε και να εμφανίσουμε ονόματα.
  • Στη συνέχεια, δηλώνουμε τον πίνακα συμβολοσειρών μέσα στην κύρια μέθοδο στην οποία έχουμε αποθηκεύσει τα ονόματα.
  • Μετά από αυτό, πρώτα, εκτυπώνουμε ένα στοιχείο στο ευρετήριο 1 το οποίο δείχνει πώς μπορούμε να έχουμε πρόσβαση στο στοιχείο ενός πίνακα σε ένα καθορισμένο ευρετήριο.
  • Στη συνέχεια, εκτυπώνουμε ολόκληρο τον πίνακα.

Η έξοδος είναι η εξής:



Λίστα σε C#

Η 'Λίστα' υπάρχει σε Σύστημα.Συλλογή.Γενικό και είναι γενικού τύπου. Οι 'λίστες' είναι δυναμικής φύσης και επιτρέπουν σε κάποιον να προσθέσει, να αφαιρέσει, να εισαγάγει, να διαγράψει ή να χειριστεί τα στοιχεία. Στο C# κάθε φορά που προστίθεται ή αφαιρείται ένα στοιχείο, το μέγεθος της λίστας αλλάζει αυτόματα.

Η σύνταξη για τη λίστα στο C# αναφέρεται παρακάτω:

Λίστα < τύπος > όνομα = νέα λίστα < τύπος > ( ) ;

Ας δούμε το ακόλουθο παράδειγμα για καλύτερη κατανόηση:

χρησιμοποιώντας το Σύστημα ;

χρησιμοποιώντας το Σύστημα. Συλλογές . Γενικός ;

Χώρος ονομάτων Ονόματα

{

Ονόματα δημόσιας τάξης

{

στατικός κενός Κύριος ( σειρά [ ] args )

{

Λίστα < σειρά > ονόματα = νέα λίστα < σειρά > ( ) ;

ονόματα. Προσθήκη ( 'Ή' ) ;

ονόματα. Προσθήκη ( 'Μπουσρα' ) ;

ονόματα. Προσθήκη ( 'Αρχή' ) ;

ονόματα. Προσθήκη ( 'Φαουάντ' ) ;

Κονσόλα. WriteLine ( 'Το στοιχείο στο ευρετήριο 1 είναι: ' + ονόματα [ 1 ] ) ;

Κονσόλα. WriteLine ( 'Τα στοιχεία αυτής της λίστας είναι:' ) ;

Για ( ενθ δείκτης = 0 ; δείκτης < ονόματα. μετρώ ; δείκτης ++ )

{

Κονσόλα. WriteLine ( ονόματα [ δείκτης ] ) ;

}

Κονσόλα. ReadKey ( ) ;

}

}

}

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

Παραγωγή

Διαφορές μεταξύ 'Array' και 'List' στο C#

Τώρα, ας ρίξουμε μια γρήγορη ματιά στις διαφορές μεταξύ πίνακα και λίστας στο C#:

Ιδιοκτησία Πίνακας Λίστα
Φύση Στατικός Δυναμικός
Μνήμη Διορθώθηκε η μνήμη, έτσι μπορεί να προκληθεί σπατάλη μνήμης. Δεν υπάρχει σπατάλη μνήμης
Εκτέλεση Γρήγορα Αργός
Πρόσβαση σε μεμονωμένο στοιχείο Γρήγορα Αργός
Προσθήκη και αφαίρεση στοιχείου Αργός Γρήγορα

Πλεονεκτήματα του Array σε C#

Τα οφέλη των συστοιχιών είναι:

  • Οι πίνακες μπορούν εύκολα να βελτιστοποιηθούν.
  • Οι χρήστες μπορούν να αποθηκεύσουν πολλά στοιχεία παρόμοιου τύπου δεδομένων.
  • Η εκτέλεση είναι γρήγορη.
  • Μπορούμε να έχουμε πρόσβαση στο στοιχείο σε ένα συγκεκριμένο ευρετήριο.
  • Επιτρέπει την αναζήτηση στοιχείων.
  • Καλύτερη απόδοση.
  • Λιγότερα σφάλματα χρόνου εκτέλεσης.

Πλεονεκτήματα της λίστας σε C#

Τα οφέλη από τη χρήση λιστών είναι:

  • Χωρίς σταθερή μνήμη.
  • Μπορεί να κλιμακωθεί μετά τη δήλωση.
  • Η προσθήκη και η αφαίρεση στοιχείων είναι γρήγορη.
  • Επιτρέψτε μας να χειριστούμε δεδομένα.
  • Μπορούμε να έχουμε πρόσβαση σε στοιχεία σε ένα καθορισμένο ευρετήριο.

Έχουμε συζητήσει τα πλεονεκτήματα και τις διαφορές μεταξύ ενός 'πίνακα' και μιας 'λίστας' στο C#.

συμπέρασμα

Οι πίνακες και οι λίστες χρησιμοποιούνται για την αποθήκευση δεδομένων. Οι πίνακες έχουν σταθερούς τύπους και μνήμη και μας επιτρέπουν να αναζητούμε ή να έχουμε πρόσβαση σε στοιχεία. Οι λίστες είναι δυναμικού τύπου και δεν έχουν σταθερή μνήμη και μας επιτρέπουν να εισάγουμε, να διαγράψουμε ή να χειριστούμε δεδομένα. Σε αυτόν τον οδηγό, είδαμε τις διαφορές και τα πλεονεκτήματα του 'array' και μιας 'list' στη C#.