Τύποι δεδομένων σε C#: Double, Integer, Float, Χαρ
⚡ Έξυπνη Σύνοψη
Οι τύποι δεδομένων στη C# ορίζουν το είδος των τιμών που μπορεί να περιέχει μια μεταβλητή, που κυμαίνονται από ακέραιους αριθμούς και αριθμούς κινητής υποδιαστολής έως τιμές Boolean και συμβολοσειρών, και καθορίζουν πόση μνήμη διατηρεί κάθε μεταβλητή κατά την εκτέλεση του προγράμματος.
Τι είναι οι τύποι δεδομένων στο C#;
Η γλώσσα C# συνοδεύεται από ένα σύνολο βασικών τύπων δεδομένων. Αυτοί οι τύποι δεδομένων χρησιμοποιούνται για τη δημιουργία τιμών που χρησιμοποιούνται σε μια εφαρμογή. Ας εξερευνήσουμε τους βασικούς τύπους δεδομένων που είναι διαθέσιμοι στο C#. Για κάθε παράδειγμα, θα τροποποιήσουμε μόνο την κύρια συνάρτηση στο αρχείο Program.cs.
1) Ακέραιος
Ένας ακέραιος τύπος δεδομένων χρησιμοποιούνται για εργασία με αριθμούς. Σε αυτήν την περίπτωση, οι αριθμοί είναι ακέραιοι αριθμοί όπως το 10, το 20 ή το 30. Στη C#, ο τύπος δεδομένων συμβολίζεται με το Λέξη-κλειδί Int32. Παρακάτω είναι ένα παράδειγμα για το πώς μπορεί να χρησιμοποιηθεί αυτός ο τύπος δεδομένων. Στο παράδειγμά μας, θα ορίσουμε μια μεταβλητή Int32 που ονομάζεται num. Στη συνέχεια, θα εκχωρήσουμε μια τιμή Integer στη μεταβλητή και στη συνέχεια θα την εμφανίσουμε ανάλογα.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32 num=30; Console.Write(num); Console.ReadKey(); } } }
Code Εξήγηση:-
- Ο τύπος δεδομένων Int32 καθορίζεται για να δηλώσει μια μεταβλητή Integer που ονομάζεται num. Στη συνέχεια, στη μεταβλητή εκχωρείται μια τιμή 30.
- Τέλος, η συνάρτηση console.write χρησιμοποιείται για την εμφάνιση του αριθμού στην κονσόλα.
Εάν ο παραπάνω κωδικός εισαχθεί σωστά και το πρόγραμμα εκτελεστεί με επιτυχία, θα εμφανιστεί η παρακάτω έξοδος.
Παραγωγή:
Από την έξοδο, μπορείτε να δείτε καθαρά ότι η μεταβλητή Integer που ονομάζεται num εμφανίστηκε στην κονσόλα
2) Double
Ένας διπλός τύπος δεδομένων χρησιμοποιείται για εργασία με δεκαδικούς. Σε αυτήν την περίπτωση, οι αριθμοί είναι ακέραιοι αριθμοί όπως 10.11, 20.22 ή 30.33. Στη C#, ο τύπος δεδομένων υποδηλώνεται με τη λέξη-κλειδί "Double". Παρακάτω είναι ένα παράδειγμα αυτού του τύπου δεδομένων.
Στο παράδειγμά μας, θα ορίσουμε μια διπλή μεταβλητή που ονομάζεται num. Στη συνέχεια θα εκχωρήσουμε ένα Double τιμή στη μεταβλητή και στη συνέχεια εμφανίστε την ανάλογα.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { double num=30.33; Console.Write(num); Console.ReadKey(); } } }
Code Εξήγηση:-
- Ο διπλός τύπος δεδομένων καθορίζεται για να δηλώσει διπλό τύπο μεταβλητή που ονομάζεται αρ. Στη συνέχεια, στη μεταβλητή εκχωρείται μια τιμή 30.33.
- Τέλος, η συνάρτηση console.write χρησιμοποιείται για την εμφάνιση του αριθμού στην κονσόλα.
Εάν ο παραπάνω κωδικός εισαχθεί σωστά και το πρόγραμμα εκτελεστεί με επιτυχία, θα εμφανιστεί η παρακάτω έξοδος.
Παραγωγή:
Από την έξοδο, μπορείτε να δείτε καθαρά ότι η διπλή μεταβλητή που ονομάζεται num εμφανίστηκε στην κονσόλα
3) Boolean
Ένας τύπος δεδομένων boolean χρησιμοποιείται για εργασία με Boolean τιμές του σωστό και λάθος. Στην C#, ο τύπος δεδομένων υποδηλώνεται με τη λέξη-κλειδί Boolean. Παρακάτω είναι ένα παράδειγμα αυτού του τύπου δεδομένων που μπορεί να χρησιμοποιηθεί.
Στο παράδειγμά μας, θα ορίσουμε μια Boolean μεταβλητή που ονομάζεται 'status'. Στη συνέχεια, θα εκχωρήσουμε μια δυαδική τιμή στη μεταβλητή και στη συνέχεια θα την εμφανίσουμε ανάλογα.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Boolean status=true; Console.Write(status); Console.ReadKey(); } } }
Code Εξήγηση:-
- Ο τύπος δεδομένων Boolean καθορίζεται για να δηλώσει μια Boolean μεταβλητή που ονομάζεται 'status'. Στη συνέχεια, στη μεταβλητή εκχωρείται η τιμή true/false.
- Τέλος, η συνάρτηση console.write χρησιμοποιείται για την εμφάνιση της Boolean τιμής στην κονσόλα.
Εάν ο παραπάνω κωδικός εισαχθεί σωστά και το πρόγραμμα εκτελεστεί με επιτυχία, θα εμφανιστεί η έξοδος.
Παραγωγή:
Από την έξοδο, μπορείτε να δείτε καθαρά ότι η μεταβλητή Boolean που ισούται με true εμφανίστηκε στην κονσόλα
4) Χορδή
Ένας τύπος δεδομένων συμβολοσειράς χρησιμοποιείται για εργασία με τιμές συμβολοσειράς. Στη C#, ο τύπος δεδομένων υποδηλώνεται με τη λέξη-κλειδί «String». Παρακάτω είναι ένα παράδειγμα αυτού του τύπου δεδομένων.
Στο παράδειγμά μας, θα ορίσουμε μια μεταβλητή String που ονομάζεται 'μήνυμα'. Στη συνέχεια, θα εκχωρήσουμε μια τιμή String στη μεταβλητή και στη συνέχεια θα την εμφανίσουμε ανάλογα.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class program { static void Main(string[] args) { String message="Hello"; Console.Write(message); Console.ReadKey(); } } }
Code Εξήγηση:-
- Ο τύπος δεδομένων συμβολοσειράς καθορίζεται για να δηλώσει μια μεταβλητή συμβολοσειράς που ονομάζεται μήνυμα. Στη συνέχεια, στη μεταβλητή εκχωρείται η τιμή "Hello".
- Τέλος, η συνάρτηση console.write χρησιμοποιείται για την εμφάνιση της τιμής συμβολοσειράς στην κονσόλα.
Εάν ο παραπάνω κωδικός εισαχθεί σωστά και το πρόγραμμα εκτελεστεί με επιτυχία, θα εμφανιστεί η έξοδος.
Παραγωγή:
Από την έξοδο, μπορείτε να δείτε καθαρά ότι η μεταβλητή String που ονομάζεται μήνυμα εμφανίστηκε στην κονσόλα
Πλήρης λίστα τύπων δεδομένων C#
Τα τέσσερα παραπάνω παραδείγματα καλύπτουν τους πιο συνηθισμένους τύπους, αλλά η C# παρέχει ένα πλήρες σύνολο ενσωματωμένων τύπων δεδομένων τιμών. Κάθε τύπος δεσμεύει μια σταθερή ποσότητα μνήμης και δέχεται ένα συγκεκριμένο εύρος τιμών, επομένως η επιλογή του μικρότερου τύπου που ταιριάζει με ασφάλεια στα δεδομένα σας διατηρεί ένα πρόγραμμα αποτελεσματικό.
| Τύπος δεδομένων | Μέγεθος | Εύρος / Descriptιόν |
|---|---|---|
| byte | 1 byte | από 0 έως 255 |
| μικρός | 2 bytes | -32,768 να 32,767 |
| ακέραιος (Int32) | 4 bytes | -2,147,483,648 να 2,147,483,647 |
| μακρύς | 8 bytes | Πολύ μεγάλοι ακέραιοι αριθμοί (±9.2 πεντάκις εκατομμύρια) |
| φλοτέρ | 4 bytes | Δεκαδικοί αριθμοί με ακρίβεια περίπου 6–7 ψηφίων |
| διπλασιαστεί | 8 bytes | Δεκαδικοί αριθμοί με ακρίβεια περίπου 15–16 ψηφίων |
| δεκαδικός | 16 bytes | Δεκαδικά ψηφία υψηλής ακρίβειας (28–29 ψηφία) για χρήματα |
| δεξαμενή | 2 bytes | Ένας μόνο χαρακτήρας Unicode |
| μπουλ | 1 byte | σωστό ή λάθος |
Παράλληλα με αυτούς τους τύπους τιμών, ο τύπος συμβολοσειράς είναι ο πιο ευρέως χρησιμοποιούμενος τύπος αναφοράς και αποθηκεύει μια ακολουθία χαρακτήρων οποιουδήποτε μήκους. Η επιλογή ενός κατάλληλου τύπου αποτρέπει σφάλματα υπερχείλισης και περιττή χρήση μνήμης.
Τύποι τιμών έναντι τύπων αναφοράς σε C#
Κάθε τύπος δεδομένων C# εμπίπτει σε μία από τις δύο ομάδες: τύπους τιμών και τύπους αναφοράς. Αυτή η διάκριση ελέγχει τον τρόπο με τον οποίο η C# αποθηκεύει τα δεδομένα και τον τρόπο με τον οποίο συμπεριφέρεται μια μεταβλητή όταν την αντιγράφετε ή τη μεταβιβάζετε σε μια μέθοδο.
- Τύποι τιμών: Αυτά αποθηκεύουν τα πραγματικά δεδομένα απευθείας, συνήθως στη στοίβα. int, double, bool, char, απαρίθμησηκαι struct είναι τύποι τιμών. Η ανάθεση μιας μεταβλητής σε μια άλλη αντιγράφει την τιμή, έτσι ώστε οι δύο μεταβλητές να παραμένουν ανεξάρτητες.
- Τύποι αναφοράς: Αυτά αποθηκεύουν μια αναφορά (μια διεύθυνση μνήμης) που δείχνει σε δεδομένα στο σωρό. Οι συμβολοσειρές (string), τα αντικείμενα (object), οι πίνακες (arrays) και οι στιγμιότυπες κλάσης είναι τύποι αναφοράς. Η αντιγραφή μιας μεταβλητής αναφοράς αντιγράφει μόνο τη διεύθυνση, επομένως και οι δύο μεταβλητές μοιράζονται το ίδιο αντικείμενο.
Μια μεταβλητή τύπου τιμής δεν μπορεί ποτέ να είναι null επειδή διατηρεί πάντα μια τιμή, ενώ ένας μη αρχικοποιημένος τύπος αναφοράς έχει από προεπιλογή null. Η κατανόηση αυτής της διαφοράς σάς βοηθά να προβλέψετε πώς ρέουν οι αλλαγές στα δεδομένα μέσω ενός προγράμματος.
Μετατροπή τύπων σε C#
Η C# χρειάζεται συχνά να μετακινεί μια τιμή από έναν τύπο δεδομένων σε έναν άλλο, όπως για παράδειγμα να μετατρέπει την είσοδο του χρήστη, η οποία είναι πάντα κείμενο, σε αριθμό. Αυτή η διαδικασία ονομάζεται μετατροπή τύπου και συμβαίνει με τρεις βασικούς τρόπους.
- Έμμεση μετατροπή: Ο μεταγλωττιστής μετατρέπει αυτόματα όταν δεν υπάρχει κίνδυνος απώλειας δεδομένων, όπως η ανάθεση ενός ακέραιου αριθμού σε έναν διπλό αριθμό. Δεν απαιτείται ειδική σύνταξη.
- Άμεση μετατροπή (casting): Τοποθετείτε τον τύπο στόχου σε παρενθέσεις, για παράδειγμα (int)myDoubleΗ μετατροπή ενός διπλού σε ακέραιο αριθμό μπορεί να προκαλέσει απώλεια δεδομένων — η μετατροπή ενός αριθμού διπλού σε ακέραιο αριθμό αφαιρεί το δεκαδικό μέρος — επομένως αποδέχεστε το ρίσκο σκόπιμα.
- Βοηθητικές μέθοδοι: Η κλάση Convert (Convert.ToInt32) και η μέθοδος Parse κάθε τύπου (int.Parse) μετατρέπουν τις συμβολοσειρές σε αριθμούς, ενώ το ToString μετατρέπει τις τιμές ξανά σε αναγνώσιμο κείμενο.
Η επιλογή της σωστής μετατροπής διατηρεί την ακρίβεια των δεδομένων και αποτρέπει σφάλματα χρόνου εκτέλεσης όταν οι τύποι σε κάθε πλευρά μιας ανάθεσης δεν ταιριάζουν.









