Μεταβλητές C# & Operators με Παράδειγμα

⚡ Έξυπνη Σύνοψη

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

  • 📦 Μεταβλητές: Μια μεταβλητή είναι μια ονομασμένη περιοχή αποθήκευσης της οποίας ο τύπος δεδομένων καθορίζει το μέγεθος, τη διάταξη και τις έγκυρες λειτουργίες για την τιμή της.
  • 🔤 Δήλωση: Η δήλωση μιας συμβολοσειράς και ενός Int32 δείχνει πώς η C# διατηρεί κείμενο και ακέραιους αριθμούς και στη συνέχεια τα εκτυπώνει με το Console.Write.
  • Operaομάδες tor: Οι αριθμητικοί, σχεσιακοί και λογικοί τελεστές καλύπτουν τα μαθηματικά, τις συγκρίσεις και τους λογικούς ελέγχους που καθοδηγούν τις αποφάσεις του προγράμματος.
  • 🧮 Ανάθεση και bitworth: Οι σύνθετοι τελεστές όπως οι συν-ίσον συντομεύουν τις ενημερώσεις, ενώ οι τελεστές bitwise λειτουργούν στα μεμονωμένα bit των ακεραίων τιμών.
  • 🔢 Προβάδισμα: OperaΗ προτεραιότητα και η συσχετιστικότητα του tor καθορίζουν τη σειρά με την οποία η C# αξιολογεί τα μέρη μιας σύνθετης έκφρασης.
  • 🤖 Βοήθεια AI: Το GitHub Copilot και το ML.NET βοηθούν στη δημιουργία δηλώσεων μεταβλητών, λογικής τελεστή και αντιστοίχισης τιμών σε λειτουργίες μηχανικής μάθησης.

Μεταβλητές C# και Operaκορμοί

Μεταβλητές C#

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

Για παράδειγμα, μια μεταβλητή μπορεί να είναι του τύπου String, που σημαίνει ότι θα χρησιμοποιηθεί για την αποθήκευση μιας τιμής συμβολοσειράς. Με βάση τον τύπο δεδομένων, μπορούν να πραγματοποιηθούν συγκεκριμένες λειτουργίες στη μεταβλητή.

Για παράδειγμα, αν είχαμε μια ακέραια μεταβλητή, τότε πράξεις όπως η πρόσθεση και η αφαίρεσηtracΗ διαδικασία μπορεί να εκτελεστεί στη μεταβλητή. Κάποιος μπορεί να δηλώσει πολλαπλές μεταβλητές σε ένα πρόγραμμα.

Ας δούμε ένα γρήγορο παράδειγμα της δήλωσης πολλαπλών μεταβλητών διαφορετικών τύπων δεδομένων.

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

Μεταβλητές C#

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="The value is ";
   Int32 val=30;
   
   Console.Write(message+val);
   Console.ReadKey();
  }
 }
}

Code Εξήγηση:-

  1. Δηλώνεται μια μεταβλητή του τύπου δεδομένων String. Το όνομα της μεταβλητής είναι 'μήνυμα'. Η τιμή της μεταβλητής είναι "Η τιμή είναι".
  2. Δηλώνεται μια μεταβλητή του τύπου δεδομένων Integer (Int32). Το όνομα της μεταβλητής είναι 'val'. Η τιμή της μεταβλητής είναι 30.
  3. Τέλος, η πρόταση Console.write χρησιμοποιείται για την έξοδο της τιμής της μεταβλητής String και Integer.

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

Παραγωγή:

Μεταβλητές C#

Από την έξοδο, μπορείτε να δείτε ότι οι τιμές τόσο της συμβολοσειράς όσο και της ακέραιας μεταβλητής εμφανίζονται στην κονσόλα.

Τώρα που οι μεταβλητές μπορούν να κρατήσουν τιμές, το επόμενο βήμα είναι να δράσουμε με βάση αυτές τις τιμές. OperaΟι τελεστές χρησιμοποιούνται για την εκτέλεση πράξεων σε τιμές διαφόρων τύπων δεδομένων. Για παράδειγμα, για την εκτέλεση της πρόσθεσης 2 αριθμών, χρησιμοποιείται ο τελεστής +.

Ας δούμε τον πίνακα των διαθέσιμων χειριστών για τους διάφορους τύπους δεδομένων.

C# Operaκορμοί

Αριθμητική Operaκορμοί

Αυτοί είναι τελεστές που χρησιμοποιούνται για την εκτέλεση μαθηματικών πράξεων σε αριθμούς. Παρακάτω είναι η λίστα με τους διαθέσιμους τελεστές σε C#.

OperaTor Περιγραφή
+ Προσθέτει δύο τελεστές
- Σεtracts ο δεύτερος τελεστής από τον πρώτο
* Πολλαπλασιάζει και τους δύο τελεστές
/ Διαιρεί τον αριθμητή με τον αποαριθμητή
% Μέτρο Operator και ένα υπόλοιπο μετά από διαίρεση ακέραιου αριθμού
++ Ο τελεστής αύξησης αυξάνει την ακέραια τιμή κατά ένα
- Ο τελεστής μείωσης μειώνει την ακέραια τιμή κατά ένα

Σχετικός Operaκορμοί

Αυτοί είναι τελεστές που χρησιμοποιούνται για την εκτέλεση σχεσιακών πράξεων σε αριθμούς. Παρακάτω είναι η λίστα των σχεσιακών τελεστών που είναι διαθέσιμοι σε C#.

OperaTor Περιγραφή
== Ελέγχει αν οι τιμές δύο τελεστών είναι ίσες ή όχι, αν ναι τότε η συνθήκη γίνεται αληθής.
!= Ελέγχει αν οι τιμές δύο τελεστών είναι ίσες ή όχι, αν οι τιμές δεν είναι ίσες τότε η συνθήκη γίνεται αληθής.
> Ελέγχει εάν η τιμή του αριστερού τελεστή είναι μεγαλύτερη από την τιμή του δεξιού τελεστή, εάν ναι, τότε η συνθήκη γίνεται αληθής.
< Ελέγχει εάν η τιμή του αριστερού τελεστή είναι μικρότερη από την τιμή του δεξιού τελεστή, εάν ναι, τότε η συνθήκη γίνεται αληθής.
>= Ελέγχει εάν η τιμή του αριστερού τελεστή είναι μεγαλύτερη ή ίση με την τιμή του δεξιού τελεστή, εάν ναι, τότε η συνθήκη γίνεται αληθής.
<= Ελέγχει εάν η τιμή του αριστερού τελεστή είναι μικρότερη ή ίση με την τιμή του δεξιού τελεστή, εάν ναι, τότε η συνθήκη γίνεται αληθής.

λογικός Operaκορμοί

Αυτοί είναι τελεστές που χρησιμοποιούνται για την εκτέλεση λογικών πράξεων σε τιμές. Παρακάτω είναι η λίστα των τελεστών που είναι διαθέσιμοι σε C#.

OperaTor Περιγραφή
&& Αυτός είναι ο τελεστής Logical AND. Εάν και οι δύο τελεστές είναι αληθής, τότε η συνθήκη γίνεται αληθής.
|| Αυτός είναι ο τελεστής Logical OR. Εάν κάποιος από τους τελεστές είναι αληθής, τότε η συνθήκη γίνεται αληθής.
! Αυτός είναι ο τελεστής Logical NOT.

Ας δούμε ένα σύντομο παράδειγμα για το πώς μπορούν να χρησιμοποιηθούν οι τελεστές στο .NET.

Στο παράδειγμά μας, θα ορίσουμε 2 ακέραιες μεταβλητές και μία λογική μεταβλητή. Στη συνέχεια, θα εκτελέσουμε αριθμητικές, σχεσιακές και λογικές πράξεις σε αυτές.

C# Operaκορμοί

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 val1 = 10,val2 = 20;
   bool status = true;
   
   Console.WriteLine(val1 + val2);
   Console.WriteLine(val1 < val2);
   Console.WriteLine(!(status));
   Console.ReadKey();
  }
 }
}

Code Εξήγηση:-

  1. Ορίζονται δύο ακέραιες μεταβλητές, η μία είναι val1 και η άλλη val2. Αυτά θα χρησιμοποιηθούν για την προβολή σχεσιακών και αριθμητικών πράξεων. Μια μεταβλητή Boolean ορίζεται για να εμφανίζει λογικές πράξεις.
  2. Παρουσιάζεται ένα παράδειγμα της αριθμητικής πράξης όπου ο τελεστής πρόσθεσης εκτελείται στα val1 και val2. Το αποτέλεσμα γράφεται στην κονσόλα.
  3. Παρουσιάζεται ένα παράδειγμα της σχεσιακής πράξης όπου ο τελεστής μικρότερος από πραγματοποιείται στα val1 και val2. Το αποτέλεσμα γράφεται στην κονσόλα.
  4. Παρουσιάζεται ένα παράδειγμα της λογικής λειτουργίας, όπου ο λογικός τελεστής (!) εφαρμόζεται στη μεταβλητή κατάστασης. Ο λογικός τελεστής NOT αντιστρέφει την τρέχουσα τιμή οποιασδήποτε Boolean τιμής. Έτσι, εάν μια τιμή Boole είναι 'true', το λογικό NOT θα επιστρέψει την τιμή 'false' και το αντίστροφο. Στην περίπτωσή μας δεδομένου ότι η τιμή της μεταβλητής status είναι 'true', το αποτέλεσμα θα δείξει 'false'. Το αποτέλεσμα γράφεται στην κονσόλα.

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

Παραγωγή:

C# Operaκορμοί

Εργασία C# Operaκορμοί

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

OperaTor Περιγραφή
= Αντιστοιχίζει την τιμή του δεξιού τελεστέου στον αριστερό τελεστέο
+= Προσθέτει τον δεξιό τελεστή στον αριστερό τελεστή και αντιστοιχίζει το αποτέλεσμα
-= Σεtracts τον δεξιό τελεστή από τον αριστερό τελεστή και αναθέτει το αποτέλεσμα
*= Πολλαπλασιάζει και τους δύο τελεστέους και αντιστοιχίζει το αποτέλεσμα στον αριστερό τελεστέο
/= Διαιρεί τον αριστερό τελεστή με τον δεξιό τελεστή και αντιστοιχίζει το αποτέλεσμα
%= Λαμβάνει το μέτρο και των δύο τελεστέων και αντιστοιχίζει το υπόλοιπο στον αριστερό τελεστή

Για παράδειγμα, η σύνταξη του count += 5 είναι ένας συντομότερος τρόπος για να γράψετε το count = count + 5. Οι σύνθετοι τελεστές ανάθεσης λειτουργούν με κάθε αριθμητικό τελεστή, καθώς και με τους τελεστές bitwise, επομένως εμφανίζονται συχνά μέσα σε βρόχους και μετρητές όπου μια τιμή ενημερώνεται επανειλημμένα.

C# Bitwise Operaκορμοί

Οι τελεστές bitwise ενεργούν στα μεμονωμένα bit των ακέραιων τιμών και όχι στον ακέραιο αριθμό. Είναι χρήσιμοι για εργασίες χαμηλού επιπέδου, όπως ο ορισμός σημαιών, η απόκρυψη τιμών και η εκτέλεση γρήγορου πολλαπλασιασμού ή διαίρεσης με δυνάμεις του δύο.

OperaTor Περιγραφή
& Η μέθοδος AND κατά bit ορίζει κάθε bit αποτελέσματος σε 1 μόνο όταν και τα δύο bit που ταιριάζουν είναι 1
| Το bitwise OR ορίζει κάθε bit αποτελέσματος σε 1 όταν οποιοδήποτε από τα bit που ταιριάζουν είναι 1
^ Το bitwise XOR ορίζει κάθε bit αποτελέσματος σε 1 μόνο όταν τα δύο bit που ταιριάζουν διαφέρουν
~ Το bitwise complement αντιστρέφει κάθε bit του μοναδικού τελεστέου του
<< Η μετατόπιση προς τα αριστερά μετακινεί τα bit προς τα αριστερά και γεμίζει τις κενές θέσεις με μηδενικά
>> Η μετατόπιση προς τα δεξιά μετακινεί τα bit προς τα δεξιά κατά τον δεδομένο αριθμό θέσεων

Για παράδειγμα, η παράσταση 5 & 3 συγκρίνει τα bit και των δύο αριθμών και επιστρέφει 1. Επειδή μια μεμονωμένη μετατόπιση προς τα αριστερά διπλασιάζει μια τιμή, οι τελεστές bit μπορούν να κάνουν ορισμένους υπολογισμούς πιο γρήγορα από τα αριθμητικά τους ισοδύναμα, κάτι που έχει σημασία στα γραφικά και στον ενσωματωμένο κώδικα.

C# OperaΠροτεραιότητα και Συνειρμικότητα

Όταν μια έκφραση περιέχει αρκετούς τελεστές, η C# δεν τους αξιολογεί απλώς από αριστερά προς τα δεξιά. OperaΗ προτεραιότητα τελεστή ορίζει τη σειρά με την οποία εκτελούνται οι διαφορετικοί τελεστές και η συσχετιστικότητα καθορίζει τη σειρά όταν δύο τελεστές μοιράζονται την ίδια προτεραιότητα.

  • Προβάδισμα: Ο πολλαπλασιασμός και η διαίρεση εκτελούνται πριν από την πρόσθεση και την αφαίρεσηtracση, άρα 2 + 3 * 4 δίνει 14, όχι 20.
  • Αριστερή συσχέτιση: Οι περισσότεροι δυαδικοί τελεστές ομαδοποιούνται από αριστερά προς τα δεξιά, επομένως το a – b – c αξιολογείται ως (a – b) – c.
  • Δεξιά συσχετιστικότητα: Οι τελεστές ανάθεσης και υπό όρους ομαδοποιούνται από δεξιά προς τα αριστερά, επομένως x = y = z αντιστοιχίζει πρώτα το z στο y.
  • Παρενθέσεις: Τυλίξτεping Ένα μέρος μιας έκφρασης σε παρένθεση παρακάμπτει την προεπιλεγμένη σειρά και καθιστά σαφή τον επιδιωκόμενο υπολογισμό.

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

Συχνές Ερωτήσεις

Μια μεταβλητή μπορεί να αλλάξει την τιμή της κατά την εκτέλεση, ενώ μια σταθερά, που δηλώνεται με τη λέξη-κλειδί const, είναι σταθερή κατά τη μεταγλώττιση και δεν αλλάζει ποτέ. Χρησιμοποιήστε μεταβλητές για δεδομένα που ενημερώνονται και σταθερές για τιμές όπως το Pi που παραμένουν ίδιες.

Η λέξη-κλειδί var επιτρέπει στον μεταγλωττιστή να συμπεράνει τον τύπο μιας τοπικής μεταβλητής από τον αρχικοποιητή της, επομένως η μεταβλητή var count = 10 δημιουργεί έναν ακέραιο. Η μεταβλητή εξακολουθεί να έχει ισχυρή τυποποίηση. Η μεταβλητή var απλώς καταργεί την ανάγκη να γράφεται ρητά το όνομα του τύπου.

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

Ένας μοναδιαίος τελεστής λειτουργεί σε έναν τελεστή, όπως το λογικό NOT ! ή την αύξηση ++. Ένας δυαδικός τελεστής λειτουργεί σε δύο τελεστές, όπως το + για την πρόσθεση ή το && για το λογικό AND. Η C# έχει επίσης έναν τριαδικό τελεστή.

Ο τριαδικός τελεστής ?: είναι η συντομογραφία μιας πρότασης if-else. Αξιολογεί μια συνθήκη και στη συνέχεια επιστρέφει την πρώτη τιμή όταν η συνθήκη είναι αληθής και τη δεύτερη όταν είναι ψευδής, όπως στον int max = a > b ? a : b.

Ο τελεστής συγχώνευσης null ?? επιστρέφει τον αριστερό τελεστέο του όταν αυτή η τιμή δεν είναι null, διαφορετικά επιστρέφει τον δεξιό τελεστέο. Για παράδειγμα, το name ?? "Guest" παρέχει μια προεπιλογή. Η παραλλαγή ??= αντιστοιχίζει μια τιμή μόνο όταν ο στόχος είναι αυτήν τη στιγμή null.

Ναι. Το GitHub Copilot προτείνει δηλώσεις μεταβλητών, εκφράσεις τελεστών και σύνθετες αναθέσεις μέσα στο Visual Studio και VS Code, και μπορεί να ολοκληρώσει έναν υπολογισμό από ένα σχόλιο. RevΔείτε κάθε πρόταση για τους σωστούς τύπους δεδομένων και την προβλεπόμενη σειρά προτεραιότητας.

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

Συνοψίστε αυτήν την ανάρτηση με: