Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Δεδομένα, μεταβλητές, υπολογισμοί

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Δεδομένα, μεταβλητές, υπολογισμοί"— Μεταγράφημα παρουσίασης:

1 Δεδομένα, μεταβλητές, υπολογισμοί
Java – Βοηθητικό Υλικό

2 Μεταβλητές και δεδομένα
Μεταβλητή: Ένα τμήμα της μνήμης στο οποίο έχουμε δώσει όνομα και χρησιμοποιείται για αποθήκευση δεδομένων Αποθηκεύονται δεδομένα μόνο ενός τύπου Ο μεταγλωττιστής ελέγχει όσα δεδομένα αποθηκεύονται σε αυτήν Είναι απαραίτητο να δηλωθεί το όνομα (identifier) και ο τύπος των δεδομένων int a, b, c;

3 Σχετικά με το όνομα της μεταβλητής
Γίνεται διάκριση μεταξύ κεφαλαίων και πεζών Δεν υπάρχει περιορισμός στον αριθμό των χαρακτήρων Πρέπει να αρχίζει από γράμμα, δολάριο ($) ή χαρακτήρα υπογράμμισης (_) Δεν πρέπει: να έχει κενά Να αρχίζει με αριθμό Να είναι το ίδιο με κάποια από τις δεσμευμένες λέξεις της Java Να περιέχει κάποιον από τους επόμενους χαρακτήρες

4 Εισαγωγή σχολίων Να περικλείσουμε τα σχόλια μεταξύ /* ……. */
Να περικλείσουμε τα σχόλια μεταξύ /* ……. */ Να τοποθετήσουμε μπροστά δύο καθέτους //

5 Παράδειγμα 1 Δώστε σε μια μεταβλητή το όνομά σας και τυπώστε το στη γραμμή εντολών class hello1 { public static void main (String args []) String name; name =“Lena”; System.out.println (“Hello” + name); } Μεταγλώττιση: javac name.java Εκτέλεση: java name

6 Ανάθεση τιμής σε μια μεταβλητή
int m_phone; m_phone = ; ή int m_phone = ;

7 Βασικές κατηγορίες μεταβλητών
Μεταβλητές – μέλη των κλάσεων: Αν δεν δώσει ο χρήστης τιμή παίρνουν από το σύστημα Τοπικές μεταβλητές: Παίρνουν τιμή μόνο από το χρήστη αλλιώς εμφανίζεται μήνυμα λάθους

8 Ακέραιοι τύποι δεδομένων (1/2)
Τύπος Μνήμη (bits) Εύρος τιμών Byte 8 -128 έως 127 Short 16 έως 32767 Int 32 έως Long 64 έως

9 Ακέραιοι τύποι δεδομένων (2/2)
Οι ακέραιοι μπορεί να είναι θετικοί ή αρνητικοί Η πλατφόρμα στην οποία εργαζόμαστε δεν επηρεάζουν τις τιμές που παίρνουν οι μεταβλητές Καλό είναι να χρησιμοποιούμε εκείνο τον τύπο στον οποίο μπορεί να αποθηκευτεί ο μεγαλύτερος αριθμός που θα χρησιμοποιηθεί στο πρόγραμμά μας. Με αυτό τον τρόπο επιτυγχάνουμε αύξηση της ταχύτητας εκτέλεσης του προγράμματός μας Συνήθως χρησιμοποιείται ο τύπος Int Οκταδική μορφή: 0 57 Δεκαεξαδική μορφή: ox 100

10 Αναδίπλωση Αν αυξηθεί ή μειωθεί μια μεταβλητή πέρα από τη μέγιστη ή την ελάχιστη η μεταβλητή θα αναδιπλωθεί Π.χ.: Αν αυξήσουμε κατά ένα μια ακέραια μεταβλητή τύπου Byte με τιμή 127 θα πάρει την τιμή -128 Αντίστροφα αν τη μειώσουμε κατά ένα από την ελάχιστη τιμή της, το -128 θα πάρει την τιμή 127

11 Αριθμοί κινητής υποδιαστολής
Όσοι αριθμοί δεν είναι ακέραιοι αποθηκεύονται στο σύστημα, σαν αριθμοί κινητής υποδιαστολής. Περιλαμβάνουν ακέραιο και δεκαδικό μέρος και μπορεί να είναι θετικοί ή αρνητικοί. Ανάλογα με την ακρίβεια που παρέχουν χωρίζονται σε float και double. Η δήλωση γίνεται με τον ίδιο τρόπο όπως και για τους ακέραιους αριθμούς

12 Αριθμοί κινητής υποδιαστολής (2/2)
Τύπος Δεσμευόμενη μνήμη σε bytes Εύρος τιμών Ακρίβεια Float 4 -3.4x1038 έως 3.4x1038 7 ψηφία double 8 -1.7x1038 έως 1.7x1038 18 ψηφία

13 Μοναδιαίοι τελεστές αύξησης και μείωσης
Μεταβάλλουν την τιμή μιας μεταβλητής, προσθέτοντας ή αφαιρώντας από αυτήν μια μονάδα y=x++; // Η μεταβλητή y θα πάρει την αρχική του x, δηλαδή 10 ενώ στη συνέχεια η μεταβλητή x θα αυξήσει την τιμή της κατά 1 και θα γίνει 11 y=++x; // Η μεταβλητή x πρώτα θα αυξηθεί κατά 1 και στη συνέχεια θα δώσει την τιμή της στην y, επομένως και η y και η x θα έχουν την τιμή 11 Ανάλογα ισχύουν και για τον τελεστή «--» μείωσης

14 Παράδειγμα 2ο Ποιες είναι οι τιμές των χ και y σε κάθε εκτύπωση?
Class showInDec { Public static void main(String args[]) int x=10; int y; y=++x; System.out.println (“x= ”+x); System.out.println (“y= ”+y); System.out.println (“ ”); y=x++; System.out.println (“x= ”+x); System.out.println (“y= ”+y); System.out.println (“ ”); y=--x; y=x--; }

15 Τελεστές αριθμητικών πράξεων
Πρόσθεσης (+) Αφαίρεσης (-) Πολλαπλασιασμού (*) Διαίρεσης (/) Υπολοίπου (%) Πολλαπλασιαστικοί τελεστές : *,/,% Υψηλή προτεραιότητα Προσθετικοί τελεστές: +,- Χαμηλότερη προτεραιότητα

16 Προβλήματα κατά την εκτέλεση των πράξεων (1/2)
Πρόσθεση: Αν προσθέσουμε μεταβλητές διαφορετικών τύπων: π.χ. Byte και Int το αποτέλεσμα θα είναι του ίδιου τύπου με αυτόν της «επικρατέστερης» Τύποι δεδομένων: Αν ο ένας από τους 2 προσθετέους είναι πραγματικός αριθμός (κινητής υποδιαστολής) τότε το αποτέλεσμα θα είναι και αυτό πραγματικός

17 Προβλήματα κατά την εκτέλεση των πράξεων (2/2)
Πολλαπλασιασμός: Εάν πολλαπλασιάσουμε δύο μεταβλητές τύπου byte, όπου η μια έχει τιμή 64 και η άλλη τιμή 4, το αποτέλεσμα που προκύπτει είναι 256, τιμή έξω από το εύρος του ακέραιου αυτού τύπου Η μεταβλητή που κρατάει το αποτέλεσμα θα πάρει την τιμή 0 Διαίρεση: Εάν έχουμε ορίσει μια μεταβλητή τύπου Int να κρατάει το αποτέλεσμα της διαίρεσης 7/4 τότε θα έχουμε υπερχείλιση καθώς στην μεταβλητή θα αποθηκευτεί η τιμή 1 ενώ το κανονικό αποτέλεσμα είναι 1.75

18 Παράδειγμα 3 Class showArithmetic {
Public static void main (String args[]) int i=1242; int j=256; int sum; int dif; long prod; long mod; double quot; sum =i+j; dif=i-j; prod =i*j; mod=i%j; quot=i/j; System.out.println (The sum is “+sum”); System.out.println (The difference is “+dif”); System.out.println (The product is “+prod”); System.out.println (The modulus is “+mod”); System.out.println (The quotient is “+quot”);

19 Προτεραιότητα πράξεων
Πράξεις σε παρενθέσεις Πολλαπλασιασμοί, διαιρέσεις (Η εκτέλεση γίνεται από τα αριστερά προς τα δεξιά) Προσθέσεις, αφαιρέσεις Γίνεται ανάθεση της τιμής που βρίσκεται δεξιά από το σύμβολο (=) στη μεταβλητή που είναι αριστερά του

20 Παράδειγμα 4ο class showAssignments { public static void main (String args[]) { int x=10; int y=20; y+=x; System.out.println (“y= ”+y); System.out.println (“ ”); y-=x; System.out.println (“y= ”+y); System.out.println (“ ”); y*=x; y/=x;

21 Λογικές τιμές Εξετάζουμε εάν ισχύει ή όχι μια συνθήκη
Χρησιμοποιούνται μεταβλητές οι οποίες παίρνουν λογικές τιμές (true ή false) boolean state; State = true; ή boolean state=true;

22 Τελεστές σύγκρισης Τελεστής Σημασία Παράδειγμα == Ίσον x==10 ! Διάφορο
< Μικρότερο x<10 > Μεγαλύτερο x>10 <= Μικρότερο ή ίσο x<=10 >= Μεγαλύτερο ή ίσο x>=10

23 Λογικοί τελεστές (1/2) Μπορούμε να συνδυάσουμε δύο ή περισσότερες λογικές εκφράσεις και να δημιουργήσουμε μια πιο σύνθετη λογική πρόταση. Λογικός τελεστής Σύμβολο AND && OR || NOT ! XOR ^

24 Λογικοί τελεστές (2/2) AND: Συνδέει δύο ή περισσότερες λογικές εκφράσεις και η τελική πρόταση είναι αληθής όταν ισχύουν όλες οι επιμέρους. OR: Συνδέει δύο ή περισσότερες λογικές εκφράσεις και η τελική πρόταση είναι αληθής όταν ισχύει τουλάχιστον μια. ΝΟΤ: Αντιστρέφει μια λογική πρόταση. XOR: Συνδέει δύο λογικές προτάσεις και χρησιμοποιείται για να ελέγξει εάν η μια και μόνο η μια από τις δυο προτάσεις είναι αληθής.

25 Παράδειγμα 5ο class showBoolean { public static void main (String args[]) boolean a,b,c,d; a=(4==2+2)&&(3==1+2); System.out.println (“a=“+a); b=(4>5 ||4>7); System.out.println (“b=“+b); c=!b; System.out.println (“c=“+c); d=(4+2==6) ^(5+2==17); System.out.println (“d=“+d); }

26 Τελεστές δυαδικών ψηφίων (1/2)
Τελεστές δυαδικών ψηφίων (1/2) Λογικές πράξεις μπορούν να γίνουν όχι μόνο μεταξύ λογικών πράξεων αλλά και μεταξύ ακέραιων αριθμών Η τελική τιμή προκύπτει από την ψηφίο προς ψηφίο πράξη μεταξύ των αριθμητικών ποσοτήτων

27 Τελεστές δυαδικών ψηφίων (2/2)
Τελεστές δυαδικών ψηφίων (2/2) Τελεστής δυαδικών ψηφίων Σύμβολο Bitwise AND & Bitwise XOR ^ Bitwise OR | Συμπλήρωμα ~

28 char myCharacter=‘b’;
Χαρακτήρες Περιλαμβάνει έναν οποιονδήποτε χαρακτήρα Ο χαρακτήρας πρέπει να περικλείεται σε απλά εισαγωγικά char myCharacter=‘b’; Ειδικοί χαρακτήρες Χρησιμοποιούμε ακολουθίες διαφυγής (ανάποδη κάθετος με έναν χαρακτήρα)

29 Ειδικοί χαρακτήρες Ακολουθία Σημασία \b Οπισθοδρόμηση \t
Χαρακτήρας στηλοθέτη \n Αλλαγή γραμμής \f Αλλαγή σελίδας \r Χαρακτήρας επιστροφής \” Διπλά εισαγωγικά \’ Απλά εισαγωγικά \\ Ανάποδη κάθετος

30 Java και Unicode Χρησιμοποιεί 2 bytes για την παράσταση των χαρακτήρων (Δυνατότητα αποθήκευσης: χαρακτήρες) Για να αναφερθούμε σε ένα συγκεκριμένο χαρακτήρα Unicode χρησιμοποιούμε την ακολουθία διαφυγής \u ακολουθούμενη από ένα τετραψήφιο δεκαεξαδικό αριθμό char mychar=‘\u0058’;

31 Παράδειγμα 6ο class showChar { public static void main (String args[]) char c1, c2, c3, c4, c5; c1=‘H’; c2=‘i’; c3=‘\n’; c4=‘G’; c5=‘\u0058’; System.out.println (c1); System.out.println (c2); System.out.println (c3); System.out.println (c4); System.out.println (c5); }

32 Αλφαριθμητικά Στην java δεν είναι μόνο ένα σύνολο από χαρακτήρες αλλά κάτι περισσότερο Αποτελεί ένα αντικείμενο της κλάσης String Διαθέτει μεθόδους οι οποίες του δίνουν περισσότερες δυνατότητες Κάθε αλφαριθμητικό δεδομένο πρέπει να περικλείεται ανάμεσα σε διπλά εισαγωγικά

33 Αρχικές τιμές για τις μεταβλητές - μέλη
Τύπος Αρχική τιμή Byte Int Float 0.0f Char \u0000 Αναφορά σε αντικείμενο null Short Long 0L Double 0.0d boolean false

34 Παράδειγμα 7ο class hello2 { public static void main (String args[]) string name; string greeting =“Hello”; name = “Lena”; System.out.println (greeting + name); }

35 Μετατροπή τύπου δεδομένων (casting)
Αναφερόμαστε σε μια διαδικασία με την οποία μετατρέπουμε έναν τύπο δεδομένων σε ένα άλλο Η αλλαγή αυτή γίνεται τόσο για απλούς τύπους μεταβλητών (int, float, double) όσο και για τύπους κλάσεων Τοποθετούμε τον τύπο που θέλουμε να έχει η μεταβλητή σε παρένθεση, πριν από το όνομα της μεταβλητής


Κατέβασμα ppt "Δεδομένα, μεταβλητές, υπολογισμοί"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google