c data types variables with examples
Αυτό το σεμινάριο εξηγεί C # τύπους δεδομένων και μεταβλητές. Μπορείτε να μάθετε να ορίζετε, να προετοιμάζετε και να δηλώνετε μια μεταβλητή μαζί με διάφορους τύπους δεδομένων στο C #:
Η δομή προγράμματος C # και το βασικό πρόγραμμα εξηγήθηκαν λεπτομερώς στο προηγούμενο σεμινάριό μας.
Αυτό το σεμινάριο C # θα σας εκπαιδεύσει όλα σχετικά με τον τύπο δεδομένων και τις μεταβλητές στο C # με απλά παραδείγματα για την εύκολη κατανόησή σας.
=> Δείτε τα εκπαιδευτικά σεμινάρια C-In-Depth εδώ
Τι θα μάθετε:
- C # Τύπος δεδομένων
- C # Μεταβλητή
- Ταξινόμηση των τύπων δεδομένων
- Μετατροπή τύπου δεδομένων
- συμπέρασμα
C # Τύπος δεδομένων
Οι τύποι δεδομένων είναι τα βασικά συστατικά κάθε γλώσσας προγραμματισμού, όπως έχουμε ήδη συζητήσει στον προηγούμενο οδηγό ότι ένας τύπος δεδομένων πρέπει να δηλωθεί για μια μεταβλητή.
Ένας τύπος δεδομένων επικοινωνεί με τον μεταγλωττιστή που τον ενημερώνει για τον τύπο δεδομένων που μπορεί να διατηρήσει μια συγκεκριμένη μεταβλητή μέσα σε αυτό. Το C # έχει διάφορους τύπους δεδομένων ενσωματωμένους σε αυτό, όπως Boolean, Integer, Float, Decimal κ.λπ.
Κάθε φορά που μια μεταβλητή δηλώνεται με έναν τύπο δεδομένων, το σύστημα εκχωρεί χώρο μνήμης για να αποθηκεύσει τις τιμές της.
class Program { static void Main(string() args) { string stringVariable = 'Some value'; } }
Κάθε ένας από τους τύπους δεδομένων στο C # έχει ένα καθορισμένο εύρος τιμών, γιατί εάν μια μεταβλητή δηλώνεται ως ακέραιος τύπος δεδομένων, τότε μπορεί να διατηρήσει οποιαδήποτε συγκεκριμένη τιμή μεταξύ -2.147.483.648 και 2.147.483.647. Ομοίως, οι άλλοι τύποι δεδομένων έχουν το δικό τους σύνολο του εύρους τιμών.
Ας ρίξουμε μια ματιά σε μερικές από τις τιμές και τα εύρη τους.
μεταβίβαση συστοιχιών σε μεθόδους στην Java
Τύπος | Αντιπροσωπεύει | Εύρος | Προεπιλεγμένη τιμή |
---|---|---|---|
διπλό | Τύπος κινητού σημείου διπλής ακρίβειας 64 bit | (+/-) 5,0 x 10 αύξηση σε -324 έως (+/-) 1,7 x 10 αύξηση σε 308 | 0,0D |
σειρά | Μια σειρά χαρακτήρων | ||
απανθρακώνω | Ένας χαρακτήρας Unicode | ||
αντικείμενο | Τύπος αντικειμένου | ||
bool | Δυαδική τιμή | Σωστό ή λάθος | Ψευδής |
ψηφιόλεξη | Ακέραιος 8-bit χωρίς υπογραφή | 0 έως 255 | 0 |
δεκαδικός | δεκαδικές τιμές με 28-29 σημαντικά ψηφία | (+ ή -) 1,0 x 10e-28 έως 7,9 x 10e28 | 0,0Μ |
int | 32 bit ακέραιος τύπος | -2.147.483.648 έως 2.147.483.647 | 0 |
φλοτέρ | Τύπος κινητού σημείου μονής ακρίβειας 32 bit | -3,4 x 10 αύξηση σε 38 έως + 3,4 x 10 αύξηση σε 38 | 0,0F |
μακρύς | 64 bit υπογεγραμμένος ακέραιος τύπος | -9.223.372.036.854.775.808 έως 9.223.372.036.854.775.807 | 0L |
εσύ | Ακέραιος τύπος 32 bit χωρίς υπογραφή | 0 έως 4.294.967.295 | 0 |
μικρός | Ακέραιος τύπος 16 bit | -32,768 έως 32,767 | 0 |
κεφάλι | 64 bit μη υπογεγραμμένος ακέραιος τύπος | 0 έως 18.446.744.073.709.551.615 | 0 |
Όπως μπορούμε να δούμε στον παραπάνω πίνακα ότι καθένας από τους τύπους δεδομένων εξαιρουμένων των συμβολοσειρών, χαρακτήρων και αντικειμένων έχει μια τιμή που βρίσκεται εντός ενός προκαθορισμένου εύρους. Ο μεταγλωττιστής C # θα δώσει ένα σφάλμα εάν ο τύπος δεδομένων υπερβαίνει το προκαθορισμένο εύρος τιμών.
Για παράδειγμα, εάν παρέχουμε τιμή μικρότερη από 0 ή μεγαλύτερη από 255 σε τύπο δεδομένων byte, τότε θα εμφανιστεί σφάλμα. Οι τύποι δεδομένων ταξινομούνται ξανά σε τύπο αναφοράς, τύπο τιμής και τύπο δείκτη. Αυτό εξαρτάται από τα μεταβλητά χαρακτηριστικά ως εάν αποθηκεύει τα δεδομένα του ή απλώς δείχνει σε συγκεκριμένα δεδομένα σε μια θέση μνήμης.
C # Μεταβλητή
Μεταβλητή είναι το όνομα που παρέχουμε στην τοποθεσία αποθήκευσης όπου αποθηκεύουμε τις τιμές μας. Κάθε μία από τις μεταβλητές στο περιβάλλον C # έχει τον δικό της τύπο, ο οποίος προσδιορίζεται περαιτέρω από τα χαρακτηριστικά του, όπως ο τύπος και το μέγεθος της τιμής που μπορεί να αποθηκεύσει. Καθορίζει επίσης το σύνολο των λειτουργιών που μπορούν να εκτελεστούν από το πρόγραμμα για χειρισμό αυτής της τιμής.
Ακολουθούν οι βασικοί τύποι τιμών στο C # που μπορούν να κατηγοριοποιηθούν περαιτέρω σε τύπους δεδομένων:
- Ολοκληρωμένοι τύποι
- Επιπλέων
- Boolean
- Δεκαδικός
- Άκυρη
Μια μεταβλητή στο C # ορίζεται πάντα χρησιμοποιώντας έναν τύπο δεδομένων. Έτσι, η σύνταξη για μια μεταβλητή δήλωση θα είναι όπως φαίνεται παρακάτω.
;
Ο ορισμός τύπου δεδομένων πρέπει να είναι ένας έγκυρος τύπος δεδομένων C # που περιλαμβάνει float, int, double, char ή οποιονδήποτε άλλο τύπο δεδομένων που μπορεί να καθορίσει ένας χρήστης. Το όνομα της μεταβλητής είναι το όνομα που έχει επιλέξει ο χρήστης για την αναγνώριση των μεταβλητών. Μια μεταβλητή μπορεί να αρχικοποιηθεί και να δηλωθεί ταυτόχρονα ή μπορεί να αρχικοποιηθεί πρώτα και μπορεί να δηλωθεί αργότερα.
Παράδειγμα: Εδώ, αρχικοποιούμε τις μεταβλητές πρώτα και μετά τις δηλώνουμε στο τελευταίο μέρος του προγράμματος.
string val; val = 'Hello World!!';
Ή, μπορούμε να αρχίσουμε και να δηλώσουμε μια μεταβλητή στην ίδια παρουσία.
string val = 'Hello World';
Εδώ αρχικοποιούμε μια μεταβλητή 'val' με τύπο δεδομένων συμβολοσειράς και ταυτόχρονα της εκχωρούμε μια τιμή, δηλαδή 'Hello World'
Πολλαπλές δηλώσεις μεταβλητών είναι επίσης δυνατές σε μία γραμμή διαχωρίζοντάς τις με κόμματα.
int i, j, k, l;
Ενώ δηλώνετε πολλές μεταβλητές, μπορείτε επίσης να τις βάλετε σε πολλές γραμμές για καλύτερη αναγνωσιμότητα. Ακόμα και όταν είναι διασκορπισμένα, ο μεταγλωττιστής πολλαπλών γραμμών θα τους θεωρήσει ότι βρίσκονται στην ίδια γραμμή εντολών έως ότου συναντήσει ερωτηματικό «;».
Για παράδειγμα:
int i, j, k, l;
Μπορούμε επίσης να ορίσουμε μια μεταβλητή με μια εκχωρημένη τιμή και να ορίσουμε μια άλλη μεταβλητή που εκχωρεί την πρώτη μεταβλητή σε αυτήν.
int i = 20; int j = I;
Μια μεταβλητή πρέπει να εκχωρηθεί με τιμή πριν από τη χρήση της, διαφορετικά ο μεταγλωττιστής θα εμφανίσει σφάλμα.
Μπορείτε επίσης να αποδεχτείτε τιμές σε μια μεταβλητή απευθείας από έναν χρήστη, κάνοντας χρήση της κλάσης κονσόλας στο χώρο ονομάτων συστήματος και χρησιμοποιώντας τη λειτουργία ReadLine ().
Παράδειγμα:
string read; read = Console.ReadLine();
Στο παραπάνω παράδειγμα, δηλώσαμε μια συμβολοσειρά ανάγνωση και στη συνέχεια χρησιμοποιήσαμε τη μεταβλητή ανάγνωσης για να αποθηκεύσουμε την είσοδο δεδομένων από το χρήστη χρησιμοποιώντας την εντολή Console.ReadLine. Η εντολή Console.ReadLine δέχεται τα δεδομένα μόνο σε μορφή συμβολοσειράς, επομένως, εάν θέλουμε να αποθηκεύσουμε την τιμή σε οποιαδήποτε άλλη μεταβλητή τύπου δεδομένων, τότε πρέπει να μετατρέψουμε την τιμή στον επιθυμητό τύπο δεδομένων πριν την εκχωρήσουμε.
Ταξινόμηση των τύπων δεδομένων
Στην παραπάνω ενότητα έχουμε κατηγοριοποιήσει τους τύπους δεδομένων με βάση τον τύπο της τιμής που αποδέχονται και την ποσοτική μνήμη που χρησιμοποιούν για την αποθήκευση του τύπου δεδομένων. Περαιτέρω τύποι δεδομένων μπορούν να χωριστούν σε δύο κατηγορίες με βάση τον τρόπο αποθήκευσης της τιμής στη μνήμη τους.
- Τύπος τιμής
- Τύπος αναφοράς
# 1) Τύπος τιμής
Οι τύποι δεδομένων τύπου τιμής είναι η μεταβλητή που διατηρεί μια τιμή δεδομένων εντός του καθορισμένου χώρου προσωπικής μνήμης. Ως εκ τούτου, αυτοί οι τύποι δεδομένων διατηρούν άμεσα τις τιμές τους.
int i = 20;
Εδώ η ακέραια μεταβλητή 'i' κρατά άμεσα την τιμή του 20.
# 2) Τύπος αναφοράς
Σε αντίθεση με τον τύπο τιμής, ένας τύπος αναφοράς δεν περιέχει τιμές. Αντί να κρατά άμεσα την τιμή, διατηρεί τη διεύθυνση όπου μπορεί να αποθηκευτεί η τιμή. Με απλά λόγια, μια μεταβλητή τύπου αναφοράς κρατά μια αναφορά σε μια συγκεκριμένη θέση μνήμης που μπορεί να περιέχει τα απαιτούμενα δεδομένα.
Μερικά από τα δεδομένα τύπου αναφοράς περιλαμβάνουν συμβολοσειρά, πίνακες, κλάση κ.λπ. Επομένως, εάν γίνουν αλλαγές στα δεδομένα, τότε η άλλη μεταβλητή θα κληρονομήσει αυτόματα τη νέα τροποποιημένη τιμή και εάν δεν έχουν εκχωρηθεί τιμές στον τύπο αναφοράς τότε από προεπιλογή περιέχει μηδενική τιμή.
Υπάρχουν τρεις διαφορετικοί τύποι αναφοράς:
- Τύπος αντικειμένου
- Δυναμικός τύπος
- Σειρά
# 1) Τύπος αντικειμένου
Ο τύπος αντικειμένου θεωρείται ως βασική κλάση για όλα τα αντικείμενα στις γλώσσες προγραμματισμού C #. Οι τύποι αντικειμένων μπορούν να αντιστοιχιστούν με τις τιμές οποιουδήποτε από τους άλλους τύπους, συμπεριλαμβανομένων τύπων τιμής, τύπων καθορισμένων από τον χρήστη ή ακόμη και οποιουδήποτε άλλου τύπου αναφοράς.
object obj = 25;
# 2) Δυναμικός τύπος
Ο δυναμικός τύπος μπορεί να χρησιμοποιηθεί για την αποθήκευση οποιασδήποτε δυναμικής μεταβλητής ή τύπου δεδομένων. Ο έλεγχος τύπου για μια δυναμική μεταβλητή πραγματοποιείται κατά τη διάρκεια του χρόνου εκτέλεσης αντί για τη στιγμή της σύνταξης.
dynamic dyn = 123;
# 3) Τύπος συμβολοσειράς
Ο τύπος συμβολοσειράς είναι ένας από τους πιο διαδεδομένους τύπους δεδομένων. Χρησιμοποιείται για την εκχώρηση μιας σειράς τιμών χαρακτήρων σε μια μεταβλητή. Η λέξη-κλειδί συμβολοσειράς αναφέρεται στον τύπο αντικειμένου του Συστήματος. Κατηγορία χορδών.
String strng = “hello world”;
Μετατροπή τύπου δεδομένων
Η μετατροπή τύπου δεδομένων μετατρέπει έναν τύπο δεδομένων σε έναν άλλο τύπο. Μερικές φορές ονομάζεται επίσης ως Πληκτρολογήστε Casting σε C # .
Υπάρχουν δύο τύποι μετατροπών:
- Σιωπηρή μετατροπή
- Άμεση μετατροπή
(i) Σιωπηρή μετατροπή
Η έμμεση μετατροπή είναι ευκολότερη στη χρήση, καθώς δεν χρησιμοποιεί καμία σύνταξη, καθώς η μετατροπή είναι ασφαλής τύπου και δεν οδηγεί σε απώλεια δεδομένων. Δεν οδηγεί σε απώλεια δεδομένων και δεν απαιτεί καν σύνταξη. Σε μια σιωπηρή μετατροπή, ένας μικρότερος τύπος δεδομένων μετατρέπεται σε μεγαλύτερο τύπο δεδομένων.
Για παράδειγμα, η μετατροπή του ακέραιου σε διπλό. Ακόμα κι αν μετατρέψουμε δεδομένα ακέραιου τύπου σε διπλό τύπο, δεν συμβαίνει απώλεια δεδομένων, καθώς το διπλό είναι ένας μεγαλύτερος τύπος που μπορεί εύκολα να διατηρήσει μια μεταβλητή μικρότερου τύπου.
που μπορώ να βρω το κλειδί ασφαλείας δικτύου
int a = 10; double b = a;
(ii) ρητή μετατροπή
Οι ρητές μετατροπές πραγματοποιούνται από έναν χρήστη χρησιμοποιώντας σύνταξη μετατροπής τύπου. Για ρητή μετατροπή, απαιτείται ένας τελεστής cast. Αυτός ο τύπος μετατροπής χρησιμοποιείται ως επί το πλείστον για τη μετατροπή μεγαλύτερων τύπων σε μικρότερους τύπους ή για τη μετατροπή της βασικής κατηγορίας στην παράγωγη κατηγορία της.
Λόγω της διαφοράς στη δομή δεδομένων, ενδέχεται να προκύψει απώλεια δεδομένων κατά τη μετατροπή και μπορεί ακόμη και να εμφανίσει σφάλμα. Αυτή δεν είναι μια ασφαλής μετατροπή τύπου.
int a = 10; double b = a;
συμπέρασμα
Σε αυτό το σεμινάριο, μάθαμε για μεταβλητές και τύπους δεδομένων. Συζητήσαμε πώς μπορούμε να ορίσουμε μια μεταβλητή. Μάθαμε επίσης να προετοιμάζουμε και να δηλώνουμε μια μεταβλητή. Είδαμε τους διαφορετικούς τύπους δεδομένων που μπορούν να χρησιμοποιηθούν για να δηλώσουν μια μεταβλητή.
Κάθε τύπος δεδομένων έχει το δικό του σύνολο εύρους εντός των οποίων δηλώνεται η τιμή και εάν δεν έχουμε δηλωμένη τιμή, τότε αποθηκεύεται μια προεπιλεγμένη τιμή. Είδαμε επίσης πώς ένα σύνολο τύπων δεδομένων μπορεί να μετατραπεί σε άλλο χρησιμοποιώντας έμμεση και ρητή μετατροπή.
Οι έμμεσες μετατροπές είναι ασφαλείς τύπου, καθώς δεν συμβαίνει απώλεια δεδομένων κατά τη μετατροπή, κυρίως επειδή ένας μικρότερος τύπος δεδομένων μετατρέπεται σε μεγαλύτερο τύπο δεδομένων. Από την άλλη πλευρά, η ρητή μετατροπή μπορεί να οδηγήσει σε απώλεια δεδομένων καθώς ο μεγαλύτερος τύπος δεδομένων μετατρέπεται σε μικρότερο τύπο δεδομένων.
Στο επόμενο σεμινάριο, θα συζητήσουμε λεπτομερώς για τον τύπο δεδομένων και θα προσπαθήσουμε να επιλύσουμε κάποιο τύπο δεδομένων σε άλλο.
=> Παρακολουθήστε την πλήρη σειρά C # Training εδώ
Συνιστώμενη ανάγνωση
- Μεταβλητές Python
- Tutorial Data Mart - Τύποι, παραδείγματα & υλοποίηση του Data Mart
- Τύποι δεδομένων Python
- Τύποι δεδομένων C ++
- Μεταβλητές σε C ++
- Παράμετρος δεδομένων JMeter με χρήση μεταβλητών καθορισμένων από τον χρήστη
- Τύποι δοκιμών μετεγκατάστασης: Με σενάρια δοκιμής για κάθε τύπο
- Παραδείγματα εξόρυξης δεδομένων: Οι πιο κοινές εφαρμογές της εξόρυξης δεδομένων 2021