var ternary operator
Αυτό το σεμινάριο εξηγεί τους χειριστές Var, LINQ και Ternary στο C # με σύνταξη, παραδείγματα χρήσης και προγραμματισμού:
Το C # είναι μια έντονα δακτυλογραφημένη γλώσσα, δηλαδή πρέπει να δηλώσουμε μια μεταβλητή πριν μπορέσουμε να τη χρησιμοποιήσουμε οπουδήποτε στο πρόγραμμα. Ας υποθέσουμε όμως ένα σενάριο όπου δεν γνωρίζουμε τι μεταβλητό τύπο θα χρειαζόμαστε στο επόμενο βήμα του προγράμματος.
Για να χειριστεί αυτούς τους τύπους σεναρίων, το C # επιτρέπει στο χρήστη να δηλώνει μεταβλητές χωρίς να παρέχει συγκεκριμένους τύπους δεδομένων σε αυτές. Αυτό μπορεί να επιτευχθεί δηλώνοντας μια μεταβλητή τύπου «var».
=> Διαβάστε τη σειρά Easy C # Training
Τι θα μάθετε:
Έχετε C #
Χαρακτηριστικά της λέξης-κλειδιού «var»
Η λέξη-κλειδί var αρχικοποιεί μεταβλητές με υποστήριξη από το var. Ο τύπος δεδομένων μιας μεταβλητής var ορίζεται κατά τη διάρκεια του χρόνου εκτέλεσης ενώ εκχωρεί δεδομένα στη μεταβλητή. Το C # μεταδίδει αυτόματα τον τύπο δεδομένων στη μεταβλητή var. Μόλις ο τύπος δεδομένων έχει αντιστοιχιστεί στη μεταβλητή, δεν μπορεί να αλλάξει.
Παράδειγμα
Η λέξη-κλειδί «var» μπορεί να χρησιμοποιηθεί για να δηλώσει μια μεταβλητή τύπου var που μπορεί να χρησιμοποιηθεί για την αποθήκευση οποιουδήποτε τύπου δεδομένων. Ας ρίξουμε μια ματιά σε μερικές από τις χρήσεις των μεταβλητών τύπου var για τους διαφορετικούς τύπους δεδομένων.
public static void Main(string() args) { var integerData = 100; var booleanData = true; var stringData = 'Var Keyword'; Console.WriteLine('Printing different var variables:
{0}
{1}
{2}', integerData, booleanData, stringData); Console.Read(); }
Παραγωγή
Εκτύπωση διαφορετικών μεταβλητών var:
100
Αληθής
Να είστε λέξη-κλειδί
Εξήγηση
Εδώ ορίσαμε 3 διαφορετικές μεταβλητές - integerData, booleanData και stringData με τύπο δεδομένων 'var'. Στη συνέχεια, έχουμε εκχωρήσει τιμές διαφορετικών τύπων δεδομένων σε καθεμία από αυτές τις μεταβλητές. Τώρα αν το εκτυπώσουμε στην κονσόλα, τότε θα λάβουμε την έξοδο όλης της εκχωρημένης τιμής.
Χρήση του var για πρόσβαση σε δεδομένα από το ArrayList
Ας υποθέσουμε ότι έχουμε μια ArrayList στην οποία θέλουμε να έχουμε πρόσβαση. Εάν δεν έχουμε ιδέα σχετικά με τον τύπο δεδομένων της λίστας πινάκων, τότε η χρήση μιας μεταβλητής var μπορεί να είναι πολύ χρήσιμη. Μπορεί επίσης να είναι χρήσιμο εάν η λίστα πινάκων αποτελείται από πολλούς τύπους δεδομένων.
Παράδειγμα
πώς να δημιουργήσετε έναν πίνακα συμβολοσειρών java
public static void Main(string() args) { ArrayList ar = new ArrayList(); ar.Add(1); ar.Add(2); ar.Add(3); ar.Add(4); foreach (var a in ar) { Console.WriteLine(a); } Console.Read(); }
Παραγωγή
ένας
δύο
3
4
Εξήγηση
Δημιουργήσαμε ένα ArrayList με 4 τιμές 1, 2, 3 και 4. Όπως ήδη αναφέρθηκε, εάν δεν γνωρίζουμε τους τύπους δεδομένων που υπάρχουν στη λίστα Array, τότε μπορούμε να χρησιμοποιήσουμε ένα 'var' στο βρόχο προσφάτου για πρόσβαση σε οποιαδήποτε δεδομένα πληκτρολογήστε που μπορεί να περιέχει.
Έτσι, σε κάθε μεταβλητή θα εκχωρηθούν τύποι δεδομένων τη στιγμή της εκχώρησης της αξίας. Αυτό είναι επίσης χρήσιμο εάν ο πίνακας περιέχει πολλές τιμές τύπου δεδομένων.
Περιορισμοί με τη χρήση var
Παρόμοια με τους άλλους τύπους δεδομένων και λέξεις-κλειδιά, το var έχει επίσης το δίκαιο μερίδιο των περιορισμών. Ας ρίξουμε μια ματιά σε μερικούς από τους περιορισμούς για τη λέξη-κλειδί var.
- Ο Var αποκρύπτει τον πραγματικό τύπο δεδομένων της μεταβλητής. Εάν κάποιος αρχικοποιητής δεν εκχωρήσει έναν σαφώς καθορισμένο τύπο δεδομένων, θα είναι δύσκολο να προσδιοριστεί ο πραγματικός τύπος δεδομένων της μεταβλητής.
- Η λέξη-κλειδί «var» είναι απλή που οι προγραμματιστές τη χρησιμοποιούν παντού και καθιστά δύσκολη τη διαφοροποίησή της από τις άλλες μεταβλητές στην εφαρμογή. Για παράδειγμα, εάν έχω μεταβλητή τύπου var. Δεν ξέρω αν πρόκειται για συμβολοσειρά, ακέραιος αριθμός ή ακόμα και λεξικό.
Περίληψη της λέξης-κλειδιού C # var
Παρακάτω αναφέρονται μερικά από τα πιο σημαντικά γεγονότα σχετικά με τη λέξη-κλειδί var που όλοι πρέπει να έχουμε κατά νου κατά τη χρήση της:
- Το Var είναι αρκετά χρήσιμο για τον καθορισμό μεταβλητών τοπικά χωρίς να χρειάζεται να παρέχει έναν ρητό τύπο δεδομένων. Ο τύπος δεδομένων μιας μεταβλητής var καθορίζεται ενώ ορίζεται οποιαδήποτε τιμή. Μόλις εκχωρηθεί ένας τύπος δεδομένων, δεν μπορεί να αλλάξει.
- Όλες οι μεταβλητές var πρέπει να δηλωθούν και να αρχικοποιηθούν στην ίδια γραμμή κώδικα. Το C # δεν επιτρέπει την εκχώρηση μηδενικής τιμής στις έμμεσες τοπικές μεταβλητές.
C # Ternary χειριστές
Ο τριαδικός χειριστής στο C taj είναι ένας χειριστής λήψης αποφάσεων και αντικαθιστά τη δήλωση if-else στη γλώσσα προγραμματισμού C αιχμηρή. Αυτός ο τελεστής μας επιτρέπει να αντικαταστήσουμε πολλές δηλώσεις if-else σε μια απλή γραμμή κώδικα.
Ένας τρισδιάστατος τελεστής βοηθά τους προγραμματιστές να εκτελέσουν δηλώσεις βάσει ορισμένων προκαθορισμένων συνθηκών χρησιμοποιώντας τη σύνταξη χειριστή λήψης αποφάσεων «?:».
Σύνταξη του Ternary Operator
Στη γλώσσα προγραμματισμού C #, ο τριμερής τελεστής περιέχει 3 διαφορετικούς τύπους τελεστών
Κατάσταση_εκφραση; Πρώτη_εξέταση: Δεύτερη_εκφραση;
Όπως φαίνεται στην παραπάνω σύνταξη, ο τριμερής τελεστής αποτελείται από τρία μέρη. Το πρώτο μέρος περιέχει μια παράσταση υπό όρους που θα επιστρέψει μια τιμή Boolean, δηλαδή True ή false.
Το δεύτερο μέρος περιέχει τη δήλωση ότι ένας προγραμματιστής θέλει να επιστρέψει εάν η έκφραση αξιολογηθεί αληθής. Το τελευταίο και το τελευταίο μέρος περιέχει τη δήλωση που θα επιστραφεί εάν η έκφραση αξιολογηθεί ως ψευδής.
Το σημείο που πρέπει να θυμάστε είναι ότι ο τριαδικός τελεστής επιστρέφει μόνο την τιμή που περιέχεται στο δεύτερο και τρίτο μέρος που δεν εκτελεί τις εκφράσεις.
Ας δούμε το παρακάτω παράδειγμα για να δούμε πώς λειτουργεί ένας τελεστής υπό όρους:
Πρόγραμμα
public static void Main(string() args) { int a = 1; int b = 3; var compare = a > b ? 'a is greater than b ' : 'b is greater than a'; Console.WriteLine('The comparison result : {0}', compare); }
Παραγωγή
Το αποτέλεσμα σύγκρισης: b είναι μεγαλύτερο από ένα
Επεξήγηση του κωδικού
Εδώ, έχουμε δύο διαφορετικούς ακέραιους αριθμούς που χρησιμοποιήσαμε για σύγκριση. Χρησιμοποιούμε μια σύγκριση var για να αποθηκεύσουμε το αποτέλεσμα. Στη συνέχεια, χρησιμοποιούμε έναν τριμερή τελεστή για να συγκρίνουμε και τους δύο ακέραιους. Έτσι, εάν η έκφραση επιστρέψει αληθής τότε η πρώτη δήλωση θα επιστραφεί ως αποτέλεσμα και εάν η έκφραση είναι ψευδής τότε η δεύτερη δήλωση θα επιστραφεί.
Ένθετο Ternary Operator
Το C # επιτρέπει επίσης στους προγραμματιστές να δημιουργήσουν έναν ένθετο τριμερή τελεστή συνδυάζοντας πολλαπλές εκφράσεις υπό όρους. Ο ένθετος τριαδικός τελεστής βοηθά στην αντικατάσταση πολλών αν-αλλιώς αν δηλώσεων και, συνεπώς, απλοποίησης τους σε μία μόνο γραμμή κώδικα.
Ας δούμε ένα παράδειγμα για το τυπικό ένθετο τριαντάφυλλο πιο καθαρά. Για παράδειγμα, θα συζητήσουμε πώς μπορούμε να χρησιμοποιήσουμε μια μόνο γραμμή κώδικα του τριμερούς τελεστή αντί να χρησιμοποιήσουμε ένα μεγάλο μπλοκ δήλωσης if-else-if.
Πρόγραμμα
public static void Main(string() args) { int a = 3; int b = 3; var compare = a > b ? 'a is greater than b' : a Παραγωγή
Το αποτέλεσμα σύγκρισης: a είναι ίσο με b
Εξήγηση
Αν δούμε το παραπάνω παράδειγμα, θα μπορέσουμε να το δούμε ότι αντί να γράφουμε πολλαπλές δηλώσεις if-else έχουμε γράψει έναν μόνο ένθετο τριμερή τελεστή που δίνει το ίδιο αποτέλεσμα με πολλές δηλώσεις γράφονται πάνω από αυτό.
c ++ ερωτήσεις συνέντευξης κωδικοποίησης
Ένας ένθετος τριαδικός τελεστής γράφεται αντικαθιστώντας τη δεύτερη δήλωση στη σύνταξη τριαδικού τελεστή από έναν άλλο τριαδικό χειριστή. Μπορούμε να το κάνουμε πολλές φορές για να τοποθετήσουμε έναν αριθμό από τη δεδομένη κατάσταση. Αυτό μπορεί επίσης να χρησιμοποιηθεί για να αντικαταστήσει το if if if συνθήκη.
Περίληψη του Ternary χειριστή
- Μάθαμε για την τρισδιάστατη έκφραση χειριστή.
- Επίσης μαθαίνουμε ότι ένας τριαδικός τελεστής επιστρέφει πάντα μια τιμή και δεν εκτελείται.
Ο ελεύθερος τελεστής μπορεί να χρησιμοποιηθεί για να αντικαταστήσει τη δήλωση if-else ή if-else-if. Μπορούμε απλά να χρησιμοποιήσουμε έναν τριαδικό τελεστή ή ακόμα και έναν τριαδικό χειριστή.
C # LINQ
Ένα ενσωματωμένο ερώτημα γλώσσας ή LINQ εισήχθη στο .net Framework 3.5. Βοηθά στην αναζήτηση δεδομένων από διαφορετικούς συλλέκτες δεδομένων, όπως η βάση δεδομένων είναι συλλογές κ.λπ. Με βάση τις απαιτήσεις του χρήστη.
Είναι ενσωματωμένο τόσο στο C Sharp όσο και στο VB, βοηθώντας έτσι στην εξάλειψη της διένεξης μεταξύ των διαφόρων γλωσσών προγραμματισμού και βάσεων δεδομένων ταυτόχρονα, παρέχοντας έτσι ένα ερώτημα γλώσσας για διαφορετικές πηγές δεδομένων.
Για παράδειγμα, μπορούμε να χρησιμοποιήσουμε ένα LINQ για την ανάκτηση μη αποθηκευμένων δεδομένων από τη βάση δεδομένων παρόμοια με το SQL Query. Μπορούμε να βοηθήσουμε τους προγραμματιστές να έχουν πρόσβαση και να αποθηκεύουν δεδομένα από διαφορετικές πηγές δεδομένων, όπως SQL Server, XML έγγραφο, συλλογές κ.λπ.
Σύνταξη LINQ
Πριν ξεκινήσουμε να εκτελούμε λειτουργίες χρησιμοποιώντας το LINQ, πρέπει να εισαγάγουμε το σύστημα. Χώρος ονομάτων Linq στην εφαρμογή μας.
Μπορούμε να εκτελέσουμε λειτουργίες LINQ με δύο τρόπους:
- Σύνταξη ερωτήματος LINQ
- Σύνταξη μεθόδου LINQ
Σύνταξη ερωτήματος LINQ
Χρησιμοποιώντας το LINQ μπορούμε να εκτελέσουμε διαφορετικές λειτουργίες ερωτημάτων χρησιμοποιώντας τη σύνταξη ερωτημάτων. Είναι αρκετά διαφορετικό από το SQL και απαιτεί από εμάς να ακολουθήσουμε την ιεραρχία σύνταξης όπως φαίνεται παρακάτω.
Η ιεραρχία για την πρόταση δίνεται με την ακόλουθη σειρά.
Από, σε, αφήστε, όπου, παραγγείλετε κατά, επιλέξτε, ομαδοποιήστε κατά, σε
Αυτές είναι η ιεραρχία σειράς που πρέπει να διατηρηθεί κατά τη σύνταξη της σύνταξης ερωτήματος LINQ. Ας ρίξουμε μια ματιά στην κοινή σύνταξη για τη σύνταξη ερωτήματος LINQ.
Σύνταξη
from variable_name in collection_name
Ας ρίξουμε μια ματιά σε ένα παράδειγμα, για να κατανοήσουμε σαφέστερα τη χρήση της σύνταξης ερωτημάτων.
Πρόγραμμα
public static void Main(string() args) { int() ar = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }; var query = from num in ar where num <3 select num; foreach (var v in query) { Console.WriteLine(v); } }
Παραγωγή
ένας
δύο
Εξήγηση
Σε αυτό το παράδειγμα, ορίσαμε έναν ακέραιο πίνακα τύπου με ορισμένα δεδομένα δοκιμής. Στη συνέχεια χρησιμοποιήσαμε μια μεταβλητή τύπου var για να αποθηκεύσουμε το αποτέλεσμα του ερωτήματος LINQ. Αργότερα χρησιμοποιήσαμε έναν βρόχο foreach για να εκτυπώσουμε όλο το περιεχόμενο του αποτελέσματος.
Το παραπάνω παράδειγμα μας δείχνει πώς να χρησιμοποιήσουμε τη σύνταξη ερωτήματος LINQ στο πρόγραμμά μας.
Σύνταξη μεθόδου LINQ
Η σύνταξη της μεθόδου χρησιμοποιεί τη μέθοδο επέκτασης της κλάσης Enumerable. Η μέθοδος Syntax είναι πολύ διαφορετική από τη σύνταξη ερωτήματος.
Δίνεται παρακάτω ένα παράδειγμα για να δείτε πώς λειτουργεί το Method Syntax.
Πρόγραμμα
public static void Main(string() args) { int() ar = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }; IEnumerable query = ar.Where(n => n > 9).ToList(); foreach (var v in query) { Console.WriteLine(v); } }
Παραγωγή
10
έντεκα
12
Εξήγηση
Εδώ, έχετε έναν ακέραιο τύπο πίνακα με ορισμένα ακέραια δεδομένα. Στη συνέχεια, εκτελέσαμε το ερώτημα μεθόδου στον ακέραιο πίνακα. Χρησιμοποιήσαμε έναν βρόχο foreach για να ανακτήσουμε τα δεδομένα από το αποτέλεσμα του ερωτήματος. Αυτό μας δίνει το αποτέλεσμα με βάση την κατάσταση που παρέχουμε στη σύνταξη μεθόδου.
συμπέρασμα
Μάθαμε ότι το LINQ είναι μια ολοκληρωμένη γλώσσα ερωτημάτων που εισήχθη στο πλαίσιο .Net.
πληκτρολογήστε char στη συμβολοσειρά c ++
Προσφέρει μια λύση για την αναζήτηση διαφορετικών πηγών δεδομένων, όπως συλλογές εγγράφων XML, βάσεις δεδομένων SQL κ.λπ. Μπορεί να χρησιμοποιηθεί τόσο με το C Sharp όσο και με το VB.net.
=> Δείτε όλα τα C # Tutorials εδώ
Συνιστώμενη ανάγνωση
- Ternary Operator In Java - Εκμάθηση με παραδείγματα
- Καλύτερη δωρεάν σειρά C # Tutorial: Ο απόλυτος οδηγός C # για αρχάριους
- C # Array: Πώς να δηλώσετε, να ξεκινήσετε και να αποκτήσετε πρόσβαση σε μια σειρά στο C #;
- C # Συλλογές: ArrayList, HashTable, SortedList With Παραδείγματα
- C # DateTime Tutorial: Εργασία με ημερομηνία & ώρα σε C # με παράδειγμα
- C # Λίστα και λεξικό - Εκμάθηση με παραδείγματα κώδικα
- C # Χειριστές: Αριθμητική, Σχεσιακή, Εργασία και Λογική
- C # Τύπος μετάδοσης: Άμεση και έμμεση μετατροπή δεδομένων με παράδειγμα