Τι είναι το System.Array στο C#

Ti Einai To System Array Sto C



Το C# υποστηρίζει τη χρήση πινάκων ως δομή δεδομένων, η οποία μας δίνει τη δυνατότητα να αποθηκεύουμε μια συλλογή στοιχείων του ίδιου τύπου με διαδοχική σειρά σταθερού μεγέθους. Όλες οι ιδιότητες του πίνακα στη C# προέρχονται από το Σύστημα.Πίνακας κλάση, η οποία χρησιμεύει ως βασική κλάση για τύπους πινάκων.

Δεδομένου ότι είναι μια αφηρημένη βασική κλάση, η απευθείας δημιουργία μιας παρουσίας της κλάσης System.Array δεν είναι δυνατή. Αντίθετα, μπορούμε να δημιουργήσουμε στιγμιότυπα μιας από τις κλάσεις που προέρχονται από το System.Array. Όλοι οι τύποι πίνακα στη C# βασίζονται στο System.Array.

Εκτός από μονοδιάστατους πίνακες, η C# έχει επίσης πολυδιάστατους πίνακες και οδοντωτούς πίνακες. Ένας πολυδιάστατος πίνακας έχει πολλαπλές ή μεγαλύτερες από μία διάσταση. Σε έναν οδοντωτό πίνακα, κάθε στοιχείο μπορεί να είναι ένας πίνακας διαφορετικών μεγεθών. Με απλά λόγια, ένας οδοντωτός πίνακας είναι ένας πίνακας πινάκων.







Τι είναι η κλάση System.Array που χρησιμοποιείται

Η κλάση System.Array παρέχει διάφορες μεθόδους και ιδιότητες για το χειρισμό πινάκων στη C#. Αυτές οι μέθοδοι μας επιτρέπουν να διαβάζουμε και να τροποποιούμε τις τιμές που είναι αποθηκευμένες σε έναν πίνακα, να λαμβάνουμε πληροφορίες για το μέγεθος και το σχήμα ενός πίνακα και να αναζητούμε στοιχεία σε έναν πίνακα.



Ορισμένες κοινές μέθοδοι περιλαμβάνουν τα GetValue(), SetValue(), GetLength() και IndexOf(). ο Σύστημα.Πίνακας Η class μας επιτρέπει επίσης να ταξινομούμε, να αναζητούμε και να χειριζόμαστε διαφορετικούς πίνακες.



Για παράδειγμα, για να λάβετε μήκος πίνακα, το Μήκος ιδιοκτησία χρησιμοποιείται. ο Κατάταξη ιδιοκτησίας μπορεί να επιστρέψει συνολικές διαστάσεις που υπάρχουν σε έναν πίνακα. ο Ακίνητο GetLength δίνει το μήκος μιας συγκεκριμένης διάστασης σε έναν πολυδιάστατο πίνακα.





Μέθοδοι και ιδιότητες στο System.Array C#

Ακολουθούν μερικές μέθοδοι και ιδιότητες που χρησιμοποιούνται στο System.Array C#:

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



Αντίγραφο(): Αυτή είναι μια δημόσια κοινή μέθοδος που μπορεί να υπερφορτωθεί και να χρησιμοποιηθεί για την αντιγραφή ενός συγκεκριμένου τμήματος στοιχείων από έναν πίνακα σε έναν άλλο πίνακα.

GetLength(): Επιστρέφει έναν ακέραιο 32-bit που εμφανίζει συνολικά στοιχεία σε μια συγκεκριμένη διάσταση ενός πίνακα.

GetLongLength(): Αυτή η μέθοδος επιστρέφει έναν ακέραιο 64-bit, ο οποίος μας δίνει τα συνολικά στοιχεία σε μια συγκεκριμένη διάσταση του πίνακα.

GetLowerBound(): Αυτή η μέθοδος ανακτά το κάτω όριο μιας συγκεκριμένης διάστασης του πίνακα, ξεκινώντας από το δείκτη 0.

GetUpperBound(): Αυτή η μέθοδος ανακτά το άνω όριο μιας καθορισμένης διάστασης του πίνακα, ξεκινώντας από το δείκτη 0.

GetValue(): Αυτή η μέθοδος ανακτά την τιμή ενός συγκεκριμένου στοιχείου στον πίνακα, ξεκινώντας από το δείκτη 1.

IndexOf(): Αυτή είναι μια δημόσια κοινόχρηστη μέθοδος που μπορεί να υπερφορτωθεί για να επιστρέψει το ευρετήριο ή τη μετατόπιση της πρώτης εμφάνισης μιας συγκεκριμένης τιμής σε έναν μονοδιάστατο πίνακα.

IsFixedSize(): Αυτή η μέθοδος λέει εάν ένας πίνακας έχει σταθερό μέγεθος ή όχι.

IsReadOnly(): Η μέθοδος δίνει μια τιμή που σημαίνει εάν ένας πίνακας είναι μόνο για ανάγνωση ή όχι.

LastIndexOf(): Αυτή είναι μια δημόσια κοινόχρηστη μέθοδος που μπορεί να υπερφορτωθεί. Δίνει τον δείκτη της τελευταίας εμφάνισης μιας τιμής σε έναν μονοδιάστατο πίνακα.

Μήκος(): Αυτή η μέθοδος δίνει μήκος πινάκων. Είναι δημόσια ιδιοκτησία και εξάγει μια ακέραια τιμή 32 bit.

LongLength(): Αυτή η μέθοδος λέει στοιχεία σε όλες τις διαστάσεις του πίνακα. Επιστρέφει μια ακέραια τιμή 64-bit.

Τάξη(): Αυτή η μέθοδος επιστρέφει τον αριθμό των διαστάσεων που έχει ο πίνακας.

Αλλαγή μεγέθους (): Αυτή η μέθοδος αλλάζει το μέγεθος ενός πίνακα στον καθορισμένο αριθμό στοιχείων.

ΑΝΤΙΣΤΡΟΦΗ(): Αυτή η μέθοδος μπορεί να αντιστρέψει τη σειρά στοιχείων σε έναν μονοδιάστατο πίνακα.

Είδος(): Αυτή η μέθοδος ταξινομεί τα στοιχεία σε έναν μονοδιάστατο πίνακα σε αύξουσα ή φθίνουσα σειρά ανάλογα με τις τιμές τους.

Παράδειγμα κώδικα

Ο παρακάτω κώδικας προετοιμάζει έναν πίνακα ακεραίων και δείχνει διάφορους Σύστημα.Πίνακας μεθόδους που μπορούν να χρησιμοποιηθούν με πίνακες σε C#. Η έξοδος κάθε μεθόδου εμφανίζεται ξεχωριστά στην κονσόλα.

χρησιμοποιώντας το Σύστημα ;
Πρόγραμμα τάξης
{
στατικός κενός Κύριος ( σειρά [ ] args )
{
// Εκκίνηση ενός πίνακα ακεραίων
ενθ [ ] αριθμοί = { 1 , 2 , 3 , 4 , 5 } ;


// Εκκαθάριση των περιεχομένων του πίνακα

Πίνακας. Σαφή ( αριθμοί , 0 , αριθμοί. Μήκος ) ;

Κονσόλα. WriteLine ( 'Συστοιχία μετά την εκκαθάριση:' ) ;

Για ( ενθ Εγώ = 0 ; Εγώ < αριθμοί. Μήκος ; Εγώ ++ )

{

Κονσόλα. Γράφω ( αριθμοί [ Εγώ ] + '' ) ;

}

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

// Αντιγράψτε τα περιεχόμενα ενός άλλου πίνακα σε αριθμούς

ενθ [ ] numsΑντιγραφή = { 7 , 8 , 9 } ;

Πίνακας. αντίγραφο ( numsΑντιγραφή , αριθμοί , numsΑντιγραφή. Μήκος ) ;

Κονσόλα. WriteLine ( 'Πίνακας μετά την αντιγραφή:' ) ;

Για ( ενθ Εγώ = 0 ; Εγώ < αριθμοί. Μήκος ; Εγώ ++ )

{

Κονσόλα. Γράφω ( αριθμοί [ Εγώ ] + '' ) ;

}

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

// Λάβετε το μήκος και το μεγάλο μήκος του πίνακα

ενθ μήκος = αριθμοί. GetLength ( 0 ) ;

μακρύς μακρύ μήκος = αριθμοί. GetLongLength ( 0 ) ;

Κονσόλα. WriteLine ( 'Μήκος του πίνακα:' + μήκος ) ;

Κονσόλα. WriteLine ( 'Μεγάλο μήκος του πίνακα:' + μακρύ μήκος ) ;

// Λάβετε το κάτω και το άνω όριο του πίνακα

ενθ χαμηλότερο όριο = αριθμοί. GetLowerBound ( 0 ) ;

ενθ άνω όριο = αριθμοί. GetUpperBound ( 0 ) ;

Κονσόλα. WriteLine ( 'Κάτω όριο του πίνακα: ' + χαμηλότερο όριο ) ;

Κονσόλα. WriteLine ( 'Ανώτερο όριο του πίνακα: ' + άνω όριο ) ;

// Λάβετε την τιμή σε ένα συγκεκριμένο ευρετήριο στον πίνακα

ενθ valueAtIndex = ( ενθ ) αριθμοί. GetValue ( 1 ) ;

Κονσόλα. WriteLine ( 'Αξία στον δείκτη 1: ' + valueAtIndex ) ;

// Βρείτε το ευρετήριο μιας συγκεκριμένης τιμής στον πίνακα

ενθ indexOfValue = Πίνακας. IndexOf ( αριθμοί , 9 ) ;

Κονσόλα. WriteLine ( 'Δείκτης τιμής 9: ' + indexOfValue ) ;

// Ελέγξτε εάν ο πίνακας έχει σταθερό μέγεθος και μόνο για ανάγνωση

bool isFixedSize = αριθμοί. IsFixedSize ;

bool isReadOnly = αριθμοί. IsReadOnly ;

Κονσόλα. WriteLine ( 'Είναι σταθερό μέγεθος;' + isFixedSize ) ;

Κονσόλα. WriteLine ( 'Είναι μόνο για ανάγνωση;' + είναι ReadOnly ) ;

// Βρείτε το τελευταίο ευρετήριο μιας συγκεκριμένης τιμής στον πίνακα

ενθ lastIndexOfValue = Πίνακας. LastIndexOf ( αριθμοί , 9 ) ;

Κονσόλα. WriteLine ( 'Τελευταίος δείκτης τιμής 9: ' + lastIndexOfValue ) ;

// Λάβετε το μήκος του πίνακα

ενθ μήκος Πάλι = αριθμοί. Μήκος ;

Κονσόλα. WriteLine ( 'Μήκος του πίνακα ξανά:' + μήκος Πάλι ) ;

// Λάβετε την κατάταξη του πίνακα

ενθ τάξη = αριθμοί. Τάξη ;

Κονσόλα. WriteLine ( 'Κατάταξη του πίνακα:' + τάξη ) ;

// Αλλαγή μεγέθους του πίνακα

Πίνακας. Αλλαγή μεγέθους ( ref αρ , 10 ) ;



// Αντιστρέψτε τα περιεχόμενα του πίνακα

Πίνακας. ΑΝΤΙΣΤΡΟΦΗ ( αριθμοί ) ;

Κονσόλα. WriteLine ( 'Πίνακας μετά την αντιστροφή:' ) ;

Για ( ενθ Εγώ = 0 ; Εγώ < αριθμοί. Μήκος ; Εγώ ++ )

{

Κονσόλα. Γράφω ( αριθμοί [ Εγώ ] + '' ) ;

}

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



// Ταξινόμηση των περιεχομένων του πίνακα

Πίνακας. Είδος ( αριθμοί ) ;

Κονσόλα. WriteLine ( 'Πίνακας μετά την ταξινόμηση:' ) ;

Για ( ενθ Εγώ = 0 ; Εγώ < αριθμοί. Μήκος ; Εγώ ++ )

{

Κονσόλα. Γράφω ( αριθμοί [ Εγώ ] + '' ) ;

}

}

}

Παραγωγή

συμπέρασμα

Η κλάση System.Array στη C# παρέχει τη βάση για εργασία με πίνακες όλων των τύπων. Είτε χρειάζεται να δημιουργήσουμε έναν απλό μονοδιάστατο πίνακα είτε έναν πολύπλοκο πολυδιάστατο πίνακα, η κλάση System.Array παρέχει διαφορετικές μεθόδους για αποτελεσματικό χειρισμό και εργασία με δεδομένα. Για μια λεπτομερή περιγραφή του System.Array σε C#, διαβάστε το άρθρο.