﻿<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>GreekTuts &#187; Γλώσσα Java</title> <atom:link href="http://greektuts.net/tag/%ce%b3%ce%bb%cf%8e%cf%83%cf%83%ce%b1-java/feed/" rel="self" type="application/rss+xml" /><link>http://greektuts.net</link> <description>Ελληνικά Βοηθήματα</description> <lastBuildDate>Fri, 27 Apr 2012 09:31:40 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.2</generator> <item><title>Μαθαίνοντας την JAVA – Μέρος 7</title><link>http://greektuts.net/java-part-7/</link> <comments>http://greektuts.net/java-part-7/#comments</comments> <pubDate>Mon, 02 Nov 2009 08:23:06 +0000</pubDate> <dc:creator>MZinas</dc:creator> <category><![CDATA[Java]]></category> <category><![CDATA[Γλώσσα Java]]></category> <category><![CDATA[Μαθαίνοντας την JAVA – Μέρος 7]]></category> <category><![CDATA[Μέρος 7]]></category> <category><![CDATA[Προγραμματισμός]]></category> <guid
isPermaLink="false">http://greektuts.net/?p=1983</guid> <description><![CDATA[Στο προηγούμενο βοήθημα μάθαμε περισσότερα για τις μεταβλητές και τις χρήσεις τους στα προγράμματα μας. Στο σημερινό βοήθημα, θα δούμε τους αριθμητικούς τελεστές και τους τελεστές αύξησης και μείωσης που υπάρχουν στη Java καθώς και τις ιδιαιτερότητες τους όπου αυτό χρειάζεται. ]]></description> <content:encoded><![CDATA[<h2>Οι Αριθμητικοί Τελεστές στη Java</h2><p>Οι αριθμητικοί τελεστές που υπάρχουν στην Java, περιλαμβάνουν όλους τους γνωστούς τελεστές αριθμητικών πράξεων δηλαδή πρόσθεσης (+), αφαίρεσης (-), πολλαπλασιασμού (*), διαίρεσης (/) και υπολοίπου ή modulo (%). Ας δούμε αυτούς τους τελεστές στον πιο κάτω πίνακα.</p><blockquote><p
style="text-align: center;" align="center"><img
class="size-full wp-image-1985 aligncenter" title="lesson07-01" src="http://static.greektuts.net/uploads/2009/11/lesson07-01.png" alt="lesson07-01" width="550" height="139" /></p></blockquote><p>Χρησιμοποιώντας δηλαδή τους πιο πάνω τελεστές, μπορούμε να φτιάξουμε αριθμητικές προτάσεις και να δώσουμε τιμές στις μεταβλητές μας, κάπως έτσι:</p><pre name="code" class="java">
int x
x = 5 + 5;
</pre><p>Μετά την εκτέλεση της πιο πάνω πρότασης, η τιμή της μεταβλητής x θα είναι 10.</p><p>Μπορούμε επίσης να εκτελέσουμε και πιο σύνθετες προτάσεις, οι οποίες να περιλαμβάνουν περισσότερους από ένα τελεστές, όπως για παράδειγμα:</p><p>Θέλουμε να υπολογίσουμε την τελική τιμή ενός προϊόντος, του οποίου η τιμή πώλησης χωρίς ΦΠΑ είναι 200 ευρώ. Το ποσοστό του ΦΠΑ είναι 19%.</p><pre name="code" class="java">
double finalPrice;
finalPrice = 200 * (1 + 19/100);
</pre><p>Μετά την εκτέλεση της πιο πάνω πράξης, η τιμή της μεταβλητής finalPrice θα είναι 238.</p><p>Κατά την εκτέλεση αυτών των αριθμητικών προτάσεων, ισχύει απόλυτα η σειρά προτεραιότητας των τελεστών, ακριβώς όπως θα τους υπολογίζαμε και σε μια αριθμητική πράξη γράφοντας σε χαρτί.</p><p>Αυτό σημαίνει πως εκτελούνται πάντα με την εξής σειρά προτεραιότητας:</p><ul><li>Πρώτα υπολογίζεται η τιμή μιας παρένθεσης</li><li>Πολλαπλασιασμός, διαίρεση και υπόλοιπο εκτελούνται πρώτα. Σε περίπτωση που μια πρόταση περιλαμβάνει περισσότερους από ένα τέτοιους τελεστές, τότε αρχίζουμε από τα αριστερά και πάμε προς τα δεξιά.</li><li>Προσθέσεις και αφαιρέσεις εκτελούνται στη συνέχεια έχοντας την ίδια προτεραιότητα μεταξύ τους, ενώ και πάλι σε περίπτωση που μια πρόταση περιλαμβάνει περισσότερους από ένα τέτοιους τελεστές, η εκτέλεση αρχίζει από τα αριστερά προς τα δεξιά.</li></ul><p>Γι’ αυτό και έτσι η πρόταση μας 200 * (1 + 19/100) θα υπολογιστεί με την εξής σειρά:</p><p>Πρώτα θα υπολογιστεί το αποτέλεσμα του 19/100, μετά θα προστεθεί 1, και τέλος το αποτέλεσμα θα πολλαπλασιαστεί επί 200, και έτσι θα έχουμε το τελικό αποτέλεσμα  238 στη μεταβλητή μας.</p><p>Δύο τελεστές οι οποίοι χρειάζεται να αναλύσουμε λίγο περισσότερο, είναι ο τελεστής του υπολοίπου (%) και ο τελεστής της διαίρεσης (/). Τον πρώτο θα τον εξηγήσουμε καθώς πολλοί ίσως να μην γνωρίσουν τη συγκεκριμένη αλγεβρική έννοια, ενώ για τον δεύτερο χρειάζεται να αναφέρουμε μερικά πράγματα καθώς η λειτουργία του στη Java κρύβει κάποιες ιδιαιτερότητες.</p><h2>Τελεστής Υπολοίπου</h2><p>Όσοι γνωρίζετε τη σημασία του τελεστή υπολοίπου, μπορείτε να προσπεράσετε αυτό το μέρος.</p><p>Ο τελεστής του υπολοίπου, υπολογίζει το υπόλοιπο που απομένει μετά από μια ακέραιη διαίρεση. Δηλαδή για παράδειγμα το αποτέλεσμα της πράξης 7%4 είναι 3, ενώ το αποτέλεσμα της πράξης 17%5 είναι 2.</p><p>Πως γίνεται αυτό; Ας πάρουμε το πρώτο παράδειγμα, το 7%4. Το αποτέλεσμα της ακέραιης διαίρεσης του 7 με το 4 είναι 1, ενώ το υπόλοιπο που απομένει είναι 3. Το 3 θα είναι και η τιμή που θα πάρει η μεταβλητή μας μετά από μια τέτοια πράξη. Είναι απλά μαθηματικά, δεν νομίζω πως χρειάζεται να επεκταθώ περισσότερο.</p><h2>Τελεστής Διαίρεσης</h2><p>Ας δούμε τώρα τον τελεστή διαίρεσης στη Java, και την ιδιαιτερότητα που έχει.</p><p>Θα γίνουν όλα περισσότερο κατανοητά, αν ξεκινήσω με ένα παράδειγμα..</p><p>Ας υποθέσουμε πως έχουμε 30 σοκολάτες, τις οποίες θέλουμε να μοιράσουμε σε 4 παιδάκια.</p><p>Για να υπολογίσουμε πόσες σοκολάτες θα δώσουμε σε κάθε παιδί και πόσες θα μας περισσέψουν, μπορούμε να χρησιμοποιήσουμε τους τελεστές διαίρεσης και υπολοίπου ως εξής:</p><pre name="code" class="java">
int chocolatesToEachKid, chocolatesLeft;
chocolatesToEachKid = 30/4;
chocolatesLeft = 30%4;
</pre><p>Μετά την εκτέλεση τον πιο πάνω εντολών, η τιμή της μεταβλητής chocolatesToEachKid θα είναι 7 (ως αποτέλεσμα της διαίρεσης 30/4) ενώ η τιμή της μεταβλητής chocolatesLeft θα είναι 2. Ίσως τώρα να διερωτάσαι γιατί το αποτέλεσμα της διαίρεσης 30/4 μας κάνει 7 και όχι 7.5 όπως κανονικά θα έπρεπε.</p><p>Η απάντηση είναι η εξής.</p><p>Στη Java, το ίδιο σύμβολο της διαίρεσης χρησιμοποιείτε για δύο μορφές διαιρέσεων. Χρησιμοποιείτε τόσο για την πραγματοποίηση διαιρέσεων ακεραίων, όσο και για την πραγματοποίηση διαιρέσεων πραγματικών αριθμών.</p><p>Θα μπορούσε να υπήρχαν ξεχωριστοί τελεστές για αυτές τις δύο μορφές διαιρέσεων, όμως ο ίδιος τελεστής (/) χρησιμοποιείτε και για τις δύο μορφές. Αυτό σημαίνει πως ο τελεστής της διαίρεσης είναι υπερφορτωμένος (overloaded). Περισσότερα για το overloading θα μάθουμε σε μελλοντικά βοηθήματα, όμως για τώρα αυτό που χρειάζεται να ξέρεις είναι πως το overloading πάει να πει πως ο ίδιος τελεστής (σε αυτή την περίπτωση ο τελεστής της διαίρεσης), μπορεί να συμπεριφέρεται διαφορετικά υπό ορισμένες περιστάσεις.</p><p>Έτσι όσο αφορά τον τελεστή της διαίρεσης, ο compiler της Java ξέρει πότε θα πραγματοποιήσει διαίρεση ακεραίων, και πότε διαίρεση πραγματικών αριθμών.</p><p>Πως όμως αποφασίζετε αυτό, και γιατί στο πιο πάνω παράδειγμα χρησιμοποιήθηκε η διαίρεση ακεραίων;</p><p>Αυτό αποφασίζετε ανάλογα με τις τιμές οι οποίες διαιρούνται (ή αν θέλεις, με τον τύπο των μεταβλητών που διαιρούνται). Αν τουλάχιστο μία από τις διαιρούμενες τιμές είναι πραγματικός αριθμός, τότε θα γίνει διαίρεση πραγματικών αριθμών και το αποτέλεσμα μας θα είναι πραγματικός αριθμός (έτσι θα πρέπει να έχουμε φροντίσει η μεταβλητή η οποία θα δεκτεί την τιμή η οποία θα προκύψει, να είναι σε θέση να πάρει τιμές με δεκαδικά). Εάν η διαίρεση γίνεται μεταξύ ακέραιων αριθμών (όπως στο πιο πάνω παράδειγμα), τότε θα γίνει διαίρεση ακεραίων, και το όποιο υπόλοιπο περισσέψει θα «χαθεί». Αυτός είναι ο λόγος που το αποτέλεσμα της διαίρεσης 30/4 θα είναι 7 και όχι 7.5 (Υπάρχει βέβαια κάποιος τρόπος με τον οποίο μπορούμε να «αναγκάσουμε» την Java να χρησιμοποιήσει όποιο τρόπο διαίρεσης επιθυμούμε, όμως αυτό είναι κάτι που θα μάθουμε στο μέλλον).</p><h2>Τελεστές Αύξησης και Μείωσης</h2><p>Βέβαια, μια μεταβλητή στη Java, δεν μπορεί να χρησιμοποιηθεί μόνο στο αριστερό μέρος μιας πράξης. Μπορεί να χρησιμοποιηθεί εξίσου και στο δεξί.</p><p>Δηλαδή, εάν είχαμε δηλωμένη μια μεταβλητή με το όνομα x, της οποία θα θέλαμε να αυξήσουμε την τιμή κατά 1 μονάδα, τότε ο κώδικας μας θα ήταν ο εξής:</p><pre name="code" class="java">
x = x + 1;
</pre><p>Με την πιο πάνω εντολή, η τιμή του x αυξήθηκε κατά 1 μονάδα. Μπορούμε όμως πιο εύκολα και γρήγορα να χρησιμοποιήσουμε την εξής συντομογραφία η οποία είναι διαθέσιμη στη Java και κάνει ακριβώς το ίδιο πράγμα:</p><pre name="code" class="java">
x++;
</pre><p>Με τον ίδιο τρόπο, γράφοντας x&#8211;; παίρνουμε το ίδιο αποτέλεσμα σαν η εντολή να ήταν x = x -1;</p><p>Μπορούμε επίσης να κάνουμε και το εξής:</p><pre name="code" class="java">
y = x++;
</pre><p>Με αυτό τον τρόπο, αυτό που γίνεται είναι το εξής, το y παίρνει την αρχική τιμή του x, και το x αυξάνεται κατά 1 μονάδα. Έτσι εάν το x ήταν 5, μετά την εκτέλεση του πιο πάνω, θα είχε γίνει 6, ενώ το y θα είχε πάρει προηγουμένως την τιμή 5.</p><p>Τα ++  και τα &#8212; μπορούν να χρησιμοποιηθούν όχι μόνο πίσω, αλλά και μπροστά από μια μεταβλητή, έτσι ακολουθώντας τον ίδιο τρόπο σκέψης, με την εντολή:</p><pre name="code" class="java">
y = ++x;
</pre><p>θα συμβεί το εξής, η τιμή του x πρώτα θα αυξηθεί κατά μια μονάδα, και στη συνέχεια θα δοθεί η νέα τιμή στο y. Έτσι x και y θα έχουν την ίδια τιμή.</p><p>Ακόμη μια συντομογραφία που υπάρχει στην Java είναι η:</p><pre name="code" class="java">
y += x;
</pre><p>και είναι η συντομογραφία για το</p><pre name="code" class="java">
y = y + x;
</pre><p>Ανάλογες συντομογραφίες υπάρχουν για όλους τους τελεστές αριθμητικών πράξεων.</p><p>Αυτές οι συντομογραφίες χρησιμοποιούνται συχνά από τους προγραμματιστές, και θα τις χρησιμοποιούμε και εμείς στα προγράμματα μας. Ας τις δούμε όμως όλες μαζί στον πιο κάτω πίνακα.</p><blockquote><p
style="text-align: center;" align="center"><img
class="size-full wp-image-1986 aligncenter" title="lesson07-02" src="http://static.greektuts.net/uploads/2009/11/lesson07-02.png" alt="lesson07-02" width="590" height="99" /></p></blockquote><blockquote><p
style="text-align: center;" align="center"><img
class="size-full wp-image-1987 aligncenter" title="lesson07-03" src="http://static.greektuts.net/uploads/2009/11/lesson07-03.png" alt="lesson07-03" width="425" height="144" /></p></blockquote><p>Αυτά για σήμερα.</p><p>Την επόμενη φορά, θα μάθουμε πώς να τυπώνουμε τις τιμές των μεταβλητών μας στην οθόνη του υπολογιστή, έτσι ώστε να είμαστε σε θέση να παρουσιάζουμε δεδομένα στον χρήστη. Αυτό θα είναι το εύκολο μέρος. Το μεγαλύτερο κομμάτι θα το αναλώσουμε για να γράψουμε και να εξηγήσουμε το δεύτερο μας πρόγραμμα το οποίο θα περιλαμβάνει όλα όσα μάθαμε μέχρι σήμερα.</p><p>Θα τα πούμε και πάλι πάρα πολύ σύντομα.</p> ]]></content:encoded> <wfw:commentRss>http://greektuts.net/java-part-7/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Μαθαίνοντας την JAVA – Μέρος 6</title><link>http://greektuts.net/java-part-6/</link> <comments>http://greektuts.net/java-part-6/#comments</comments> <pubDate>Mon, 26 Oct 2009 09:40:16 +0000</pubDate> <dc:creator>MZinas</dc:creator> <category><![CDATA[Java]]></category> <category><![CDATA[Γλώσσα Java]]></category> <category><![CDATA[Μαθαίνοντας την JAVA – Μέρος 6]]></category> <category><![CDATA[Μέρος 6]]></category> <category><![CDATA[Προγραμματισμός]]></category> <guid
isPermaLink="false">http://greektuts.net/?p=1925</guid> <description><![CDATA[Στο προηγούμενο βοήθημα μάθαμε πώς να δημιουργούμε σχόλια στον πηγαίο κώδικα ενός προγράμματος, όπως επίσης μάθαμε τους βασικούς τύπους δεδομένων με τους οποίους μπορούμε να δημιουργούμε μεταβλητές στην Java. Σήμερα θα δούμε πώς να δηλώνουμε και πώς να χρησιμοποιούμε αυτές τις μεταβλητές στα προγράμματα μας. Επίσης θα δούμε πώς να δηλώνουμε στα προγράμματα μας μεταβλητές σταθερών τιμών, και πως αυτές διαφέρουν απ’ τις συνηθισμένες μεταβλητές.]]></description> <content:encoded><![CDATA[<h2>Δηλώνοντας τις Μεταβλητές μας</h2><p>Ως μεταβλητή, ονομάζουμε μια περιοχή στη μνήμη του υπολογιστή, η οποία δεσμεύετε από το πρόγραμμα μας και χρησιμοποιείτε για αποθήκευση δεδομένων κατά τη διάρκεια που αυτό τρέχει. Οι μεταβλητές συνήθως δηλώνονται/δημιουργούνται στην αρχή (χωρίς αυτό να είναι απαραίτητα δεσμευτικό) ενός προγράμματος και κατά τη διάρκεια της δήλωσης δίνονται τα εξής στοιχεία:</p><ul><li>Όνομα της μεταβλητής, έτσι ώστε να μπορούμε να την χρησιμοποιούμε στο πρόγραμμα μας χρησιμοποιώντας τη συγκεκριμένη ονομασία.</li><li>Τύπο δεδομένων της μεταβλητής, έτσι ώστε να δημιουργηθεί στην μνήμη ο κατάλληλος χώρος ο οποίος θα είναι ανά πάσα στιγμή έτοιμος να φιλοξενήσει δεδομένα αυτού του τύπου. Αν για παράδειγμα δηλώσουμε μια μεταβλητή ως τύπο byte, τότε στη μνήμη θα δεσμευτεί ο μέγιστος χώρος που είναι πιθανό να χρειαστεί να αποθηκευτούν δεδομένα για μια μεταβλητή αυτού του τύπου.</li></ul><p>Μερικά στοιχεία που πρέπει να προσέξουμε επιλέγοντας ονομασία για μια μεταβλητή, είναι τα εξής:</p><ul><li>Το όνομα να μην είναι ήδη δεσμευμένο απ’ το λεξιλόγιο της Java, δηλαδή λέξεις όπως class, void, public κτλ. είναι απαγορευμένες.</li><li>Να μην περιλαμβάνει κενά διαστήματα (spaces), ούτε μαθηματικά σύμβολα όπως + ή –</li><li>Πρέπει οπωσδήποτε να αρχίζει με χαρακτήρα του αγγλικού αλφαβήτου ή με κάτω γραμμή (_), ή με το σύμβολο του δολαρίου ($)</li><li>Σημαντικό είναι να επιλέξουμε μια ονομασία αντιπροσωπευτική για την χρήση για την οποία προορίζετε η συγκεκριμένη μεταβλητή. Αυτό θα μας διευκολύνει κατά τη διάρκεια ανάγνωσης του κώδικα μας.</li></ul><p>Αφού αποφασίσουμε τον τύπο αλλά και την ονομασία της μεταβλητής μας, τότε μπορούμε να την δηλώσουμε στον κώδικα μας με τον εξής τύπο:</p><p>τύπος ονομασίαΜεταβλητής;</p><p>Για παράδειγμα, στο παράδειγμα που είχαμε δει στο προηγούμενο βοήθημα, όπου θέλαμε να φτιάξουμε κάποιο πρόγραμμα που να υπολογίζει τον αριθμό τον παγωτών που έχει πωλήσει κάποιος σε μια μέρα. Σε αυτή την περίπτωση, χρειαζόμαστε μια μεταβλητή που να αντιπροσωπεύει αυτό τον αριθμό. Τι τύπου θα είναι αυτή η μεταβλητή όμως; Σίγουρα θα είναι ακέραιος αριθμός, έτσι μπορούμε να χρησιμοποιήσουμε είτε byte, είτε short, είτε int, είτε ακόμη και long. Ας πούμε όμως πως επιλέγουμε να χρησιμοποιήσουμε μεταβλητή τύπου int και να του δώσουμε ονομασία iceCreamSales, τότε σύμφωνα με τον τύπο που είδαμε πιο πάνω, θα την δηλώσουμε στο πρόγραμμα μας με τον εξής κώδικα:</p><pre name="code" class="java">
int iceCreamSales;
</pre><p>Ωραία!</p><p>Ας πούμε για παράδειγμα τώρα, πως εκτός από τον αριθμό των παγωτών, θέλουμε να κρατάμε και τις εισπράξεις των πωλήσεων της ημέρας, τότε χρειαζόμαστε ακόμη μια μεταβλητή. Εδώ χρειαζόμαστε κάποια μεταβλητή που να μπορεί να κρατάει και δεκαδικά, έτσι οι επιλογές που μπορούμε να  χρησιμοποιήσουμε είναι float ή double. Επιλέγουμε να χρησιμοποιήσουμε double και ως ονομασία της μεταβλητής μας το όνομα netSales. Τότε στον κώδικα του προγράμματος μας θα δηλώσουμε τις δύο μεταβλητές μας κάπως έτσι:</p><pre name="code" class="java">
int iceCreamSales;
double netSales;
</pre><p>Τι συμβαίνει στην περίπτωση που θέλουμε να δηλώσουμε περισσότερες από μια μεταβλητές του ίδιου τύπου;</p><p>Ας συνεχίσουμε το παράδειγμα μας υποθέτοντας πως εκτός από παγωτά, ο φίλος μας πωλεί και γρανίτες. Έτσι θέλει το πρόγραμμα που θα του φτιάξουμε να είναι σε θέση να κρατάει και αυτό τον αριθμό. Χρειαζόμαστε ακόμη μια μεταβλητή του τύπου int, και η ονομασία που επιλέγουμε είναι granitaSales. Αυτά μπορούν να δηλωθούν κάπως έτσι:</p><pre name="code" class="java">
int granitaSales;
int iceCreamSales;
double netSales;
</pre><p>Υπάρχει όμως ακόμη ένας τρόπος να γίνει αυτό..</p><p>Στην Java, μπορούμε να δηλώσουμε όλες τις μεταβλητές του ίδιου τύπου, στην ίδια γραμμή, στην ίδια εντολή. Έτσι μπορούμε να δηλώνουμε τις μεταβλητές του ίδιου τύπου με περισσότερη ευκολία, γράφοντας λιγότερο κώδικα που αυτό θα έχει αντίκτυπο στο μέγεθος του προγράμματος μας αλλά και στην καλύτερη οργάνωση του κώδικα.</p><p>Η δήλωση περισσότερων από μια μεταβλητές του ίδιου τύπου, στην ίδια γραμμή, γίνεται με τον εξής τρόπο:</p><pre name="code" class="java">
τύπος ονομασίαΜεταβλητής1, ονομασίαΜεταβλητής2;
</pre><p>Φυσικά μπορούμε να δηλώσουμε περισσότερες από δύο μεταβλητές με τον ίδιο τρόπο.</p><p>Έτσι, ο πιο πάνω κώδικας που γράψαμε σε τρείς γραμμές, μπορεί να γραφεί σε δύο ακριβώς έτσι:</p><pre name="code" class="java">
int granitaSales, iceCreamSales;
double netSales;
</pre><h2>Εκχωρώντας Τιμές Στις Μεταβλητές Μας</h2><p>Μια μεταβλητή θα ήταν τελείως άχρηστη αν δεν μπορούσαμε σε αυτήν να εκχωρήσουμε δεδομένα. Μπορούμε να εκχωρήσουμε δεδομένα σε μια μεταβλητή χρησιμοποιώντας το σύμβολο ίσον (=). Το = ονομάζεται ως τελεστής εκχωρήσεως (assignment operator), και για να δώσουμε τιμή σε μια μεταβλητή τον χρησιμοποιούμε ως εξής:</p><pre name="code" class="java">
ονομασίαΜεταβλητής = τιμή;
</pre><p>Αν για παράδειγμα θέλουμε να δώσουμε την τιμή 0 στην μεταβλητή μας με την ονομασία iceCreamSales τότε ο κώδικας θα είναι ο εξής:</p><pre name="code" class="java">
iceCreamSales = 0;
</pre><p>Όπως είναι λογικό, για να δώσουμε τιμή σε κάποια μεταβλητή, αυτή πρέπει πρώτα προηγουμένως να έχει δηλωθεί στον κώδικα μας. Μπορούμε όμως, κατά την στιγμή της δήλωσης μιας μεταβλητής,  στην ίδια γραμμή να της δώσουμε ταυτόχρονα και μια τιμή.</p><p>Στο πιο πάνω παράδειγμα μας, αυτό θα γινόταν ως εξής:</p><pre name="code" class="java">
int iceCreamSales = 0;
</pre><p>ο πιο πάνω κώδικας έχει την ίδια σημασία με αυτό:</p><pre name="code" class="java">
int iceCreamSales;
iceCreamSales = 0;
</pre><p>Σημαντικό είναι να προσέξουμε τις τιμές που δίνουμε σε κάθε μεταβλητή γιατί εάν δώσουμε κάποια τιμή η οποία δεν χωράει στο συγκεκριμένο τύπο δεδομένων της μεταβλητής, τότε το πρόγραμμα μας δεν θα μεταγλωττίζετε και θα λάβουμε error. Για παράδειγμα, δεν μπορούμε να εισάγουμε μια τιμή με δεκαδικά σε μια int μεταβλητή.</p><p>Για αυτό το λόγο, το πιο κάτω παράδειγμα είναι λανθασμένο και δεν θα λειτουργήσει.</p><pre name="code" class="java">
int iceCreamSales;
iceCreamSales = 3.5;
</pre><p>Μπορούμε όμως να εκχωρήσουμε μια ακέραια τιμή σε μια μεταβλητή με δεκαδικά.</p><p>Για παράδειγμα:</p><pre name="code" class="java">
double netSales;
netSales = 100;
</pre><p>Σε αυτή την περίπτωση, αυτόματα ο μεταγλωττιστής θα μετατρέψει το 100 σε 100.00 έτσι ώστε να χωράει στη συγκεκριμένη μεταβλητή.</p><p>Σημαντικό είναι επίσης να δούμε πώς μπορούμε να εκχωρούμε τιμές σε μεταβλητές του τύπου char.</p><p>Όπως έχουμε πει στο προηγούμενο βοήθημα, στις μεταβλητές του τύπου char χωράει ένας Unicode χαρακτήρας. Η εκχώρηση τιμών σε αυτές τις μεταβλητές γίνεται ως εξής.</p><pre name="code" class="java">
ονομασίαΜεταβλητής = ‘UnicodeΧαρακτήρας’;
</pre><p>Για παράδειγμα, αφού πρώτα υπάρχει δηλωμένη η μεταβλητή με την ονομασία grade, εκχωρούμε τιμές σε αυτήν ακριβώς έτσι:</p><pre name="code" class="java">
grade = ‘A’;
</pre><h2>Μεταβλητές Σταθερών Τιμών</h2><p>Σε ένα πρόγραμμα μας, μπορούμε να έχουμε επίσης μεταβλητές των οποίων η τιμή να είναι σταθερή. Μερικά παραδείγματα σταθερών τιμών είναι:</p><ul><li>Οι ώρες σε μια ημέρα που πάντα είναι 24</li><li>Οι μήνες σε ένα χρόνο που είναι πάντα 12</li><li>Ο μεγαλύτερος βαθμός σε ένα διαγώνισμα που είναι πάντα 100</li><li>Ο μαθηματικός όρος π που πάντα είναι 3.14176</li></ul><p>Για να δηλώσουμε μια μεταβλητή ως σταθερή, αυτό που έχουμε να κάνουμε είναι κατά τη διάρκεια της δήλωσης της, να βάλουμε μπροστά τη λέξη-κλειδί final. Επίσης, αν και δεν είναι αναγκαίο, συνήθως οι μεταβλητές σταθερών τιμών δηλώνονται με ΚΕΦΑΛΑΙΟΥΣ χαρακτήρες. Αυτό βοηθάει στη συνέχεια όταν σε κάποιο κομμάτι του κώδικα μας δούμε τη μεταβλητή, να καταλάβουμε πως πρόκειται περί σταθερής μεταβλητής. Όπως είπαμε και πιο παλιά, η Java ξεχωρίζει τους κεφαλαίους απ’ του πεζούς χαρακτήρες, έτσι μια μεταβλητή με την ονομασία ‘exam’ είναι διαφορετική από μια με την ονομασία ‘Exam’ ή ‘ΕΧΑΜ’.</p><p>Για παράδειγμα, φτιάχνω ένα πρόγραμμα για κάποιο καθηγητή και ξέρω πως η μεγαλύτερη βαθμολογία σε κάποιο διαγώνισμα θα είναι το 100. Έτσι η μεταβλητή που θα δηλώσω για αυτό το σκοπό είναι η εξής:</p><pre name="code" class="java">
final int EXAMSCORE = 100;
</pre><p>Οποιαδήποτε προσπάθεια αργότερα στο πρόγραμμα για αλλαγή της τιμής αυτής της μεταβλητής, θα οδηγήσει σε error και θα ενημερωθούμε για αυτό από τον μεταγλωττιστή.</p><p>Αυτά για σήμερα.</p><p>Μπορείς να εξασκηθείς φτιάχνοντας ένα νέο project στο NetBeans και δοκιμάζοντας αυτά που μάθαμε σήμερα. Σίγουρα δεν θα είσαι σε θέση να φτιάξεις ένα πρόγραμμα που να τρέχει και να τυπώνει αποτελέσματα (αφού ακόμη δεν τα μάθαμε αυτά), όμως ο καλύτερος τρόπος για να χωνέψεις αυτά που μαθαίνουμε κάθε φορά, είναι να κάνεις και πρακτική εξάσκηση με το πληκτρολόγιο σου.</p><p>Προσπάθησε να δηλώσεις μερικές μεταβλητές και να τους εκχωρήσεις τιμές. Τόσο αρχικά στην ίδια γραμμή, όσο και με τον δεύτερο τρόπο ξεχωριστά. Μπορεί να φαίνεται αστείο και να νομίζεις πως μπορείς να μάθεις τα πάντα απλά διαβάζοντας ένα βοήθημα ή ένα βιβλίο, όμως η αλήθεια είναι πως για να πάρεις το 100% της γνώσης πρέπει ταυτόχρονα να κάνεις και πρακτική εξάσκηση, αφού αυτή πάντα βοηθάει καλύτερα στο να εμπεδώσουμε κάθε νέο πράγμα που μαθαίνουμε.</p><p>Καλή εξάσκηση και θα τα πούμε ξανά πάρα πολύ σύντομα.</p> ]]></content:encoded> <wfw:commentRss>http://greektuts.net/java-part-6/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
