Οι εκφράσεις αποτελούν βασικά δομικά στοιχεία κάθε προγράμματος Java που συνήθως δημιουργείται για να παράγει μια νέα τιμή, αν και μερικές φορές μια έκφραση αποδίδει μια τιμή σε μια μεταβλητή. Οι εκφράσεις δημιουργούνται χρησιμοποιώντας τιμές, μεταβλητές, τους χειριστές και τις κλήσεις μεθόδων.
Διαφορά μεταξύ των δηλώσεων Java και των εκφράσεων
Όσον αφορά τη σύνταξη της γλώσσας Java, μια έκφραση είναι παρόμοια με μια ρήτρα στην αγγλική γλώσσα που απεικονίζει ένα συγκεκριμένο νόημα. Με τη σωστή στίξη, μπορεί μερικές φορές να σταθεί μόνη της, αν και μπορεί επίσης να αποτελεί μέρος μιας φράσης. Ορισμένες εκφράσεις ισοδυναμούν με δηλώσεις από μόνοι τους (με την προσθήκη ενός ερωτηματικού στο τέλος), αλλά συνηθέστερα, αποτελούν μέρος μιας δήλωσης.
Για παράδειγμα,
(Α2)είναι μια έκφραση.
b + (α * 2).είναι δήλωση. Θα μπορούσατε να πείτε ότι η έκφραση είναι μια ρήτρα και η δήλωση είναι η πλήρης πρόταση αφού αποτελεί την πλήρη μονάδα εκτέλεσης.
Ωστόσο, μια δήλωση δεν χρειάζεται να περιλαμβάνει πολλές εκφράσεις. Μπορείτε να μετατρέψετε μια απλή έκφραση σε μια δήλωση με την προσθήκη ενός ημικυκλίου:
(Α2);
Τύποι εκφράσεων
Ενώ μια έκφραση παράγει συχνά ένα αποτέλεσμα, δεν είναι πάντα. Υπάρχουν τρεις τύποι εκφράσεων στην Java:
- Αυτά που παράγουν μια τιμή, δηλαδή το αποτέλεσμα
(1 + 1)
- Εκείνοι που εκχωρούν μια μεταβλητή, για παράδειγμα
(ν = 10)
- Αυτοί που δεν έχουν αποτέλεσμα αλλά μπορεί να έχουν "παρενέργεια" επειδή μια έκφραση μπορεί να περιλαμβάνει ένα ευρύ φάσμα στοιχεία όπως επικλήσεις μεθόδων ή χειριστές αύξησης που τροποποιούν την κατάσταση (δηλ. μνήμη) ενός a πρόγραμμα.
Παραδείγματα εκφράσεων
Ακολουθούν ορισμένα παραδείγματα διαφόρων τύπων εκφράσεων.
Εκφράσεις που παράγουν μια τιμή
Οι εκφράσεις που παράγουν μια αξία χρησιμοποιούν ένα ευρύ φάσμα Java αριθμητικών, συγκριτικών ή υπό όρους χειριστών. Για παράδειγμα, οι αριθμητικοί χειριστές περιλαμβάνουν τα +, *, /, , ++ και%. Μερικοί υπό όρους χειριστές είναι?, || και οι χειριστές σύγκρισης είναι . Δείτε το Προδιαγραφές Java για μια πλήρη λίστα.
Αυτές οι εκφράσεις παράγουν μια αξία:
3/2
5% 3
pi + (10 * 2)
Σημειώστε τις παρενθέσεις στην τελευταία έκφραση. Αυτό κατευθύνει πρώτα την Java για να υπολογίσει την αξία της έκφρασης μέσα στις παρενθέσεις (όπως και η αριθμητική που μάθατε στο σχολείο), και στη συνέχεια να ολοκληρώσετε τον υπόλοιπο υπολογισμό.
Εκφράσεις που εκχωρούν μια μεταβλητή
Αυτό το πρόγραμμα περιέχει πολλές εκφράσεις (με έντονους πλάγιους χαρακτήρες) που ο καθένας αποδίδει μια τιμή.
int δευτερόλεπταInDay = 0;
int
ημέρεςInWeek = 7;
int
ώρεςInDay = 24;
int
minutesInHour = 60;
int
secondsInMinute = 60;
boolean
calculateWeek = true;
δευτερόλεπταInDay = secondsInMinute * minutesInHour * hoursInDay; //7
System.out.println (
Msgstr "" "Ο αριθμός των δευτερολέπτων σε μια μέρα είναι:" + δευτερόλεπτα);
αν (
calculateWeek == true)
{
System.out.println (
"Ο αριθμός των δευτερολέπτων σε μια εβδομάδα είναι:" + secondsInDay * daysInWeek);
}
Οι εκφράσεις στις πρώτες έξι γραμμές του παραπάνω κώδικα, όλες χρησιμοποιούν τον χειριστή εκχώρησης για την εκχώρηση της τιμής στα δεξιά στη μεταβλητή στα αριστερά.
Η γραμμή που δηλώνεται με // 7 είναι μια έκφραση που μπορεί να σταθεί μόνη της ως δήλωση. Επίσης, δείχνει ότι οι εκφράσεις μπορούν να δημιουργηθούν μέσω της χρήσης περισσότερων από έναν χειριστή. Η τελική τιμή της μεταβλητής secondsInDay είναι η αποκορύφωση της αξιολόγησης κάθε έκφρασης με τη σειρά της (δηλ., SecondsInMinute * minutesInHour = 3600, ακολουθούμενη από 3600 * hoursInDay = 86400).
Εκφράσεις χωρίς αποτέλεσμα
Ενώ κάποιες εκφράσεις δεν παράγουν αποτέλεσμα, μπορούν να έχουν μια παρενέργεια που εμφανίζεται όταν μια έκφραση αλλάζει την αξία οποιουδήποτε από τα τους τελεστές.
Για παράδειγμα, ορισμένοι χειριστές θεωρούνται ότι παράγουν πάντα παρενέργεια, όπως οι χειριστές εκχώρησης, αύξησης και μείωσης. Σκεφτείτε αυτό:
int προϊόν = a * b;
Η μόνη μεταβλητή που αλλάξαμε σε αυτή την έκφραση είναι το προϊόν; ένα και σι δεν αλλάζουν. Αυτό ονομάζεται παρενέργεια.