ΣΕΜΙΝΑΡΙΟ JAVA. 1 η ιάλεξη

Σχετικά έγγραφα
ΣΕΜΙΝΑΡΙΟ JAVA. 2 η ιάλεξη

ΣΕΜΙΝΑΡΙΟ JAVA. 2 η ιάλεξη

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου

Βασικά Στοιχεία της Java

2.1. Εντολές Σχόλια Τύποι Δεδομένων

Βασικά Στοιχεία της Java

Αντικειµενοστρεφής Προγραµµατισµός

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Στοιχειώδης προγραμματισμός σε C++

Δομημένος Προγραμματισμός (ΤΛ1006)

Αντικειμενοστρεφής Προγραμματισμός

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές

Διαδικασιακός Προγραμματισμός

3. Εκφράσεις και έλεγχος ροής

Εισαγωγή στον Προγραμματισμό

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Ανάπτυξη και Σχεδίαση Λογισμικού

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

Java sessions. Part 1 - Βασικά έννοιες - μέθοδοι

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 1: Εισαγωγικές έννοιες

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

Δομές ελέγχου ροής προγράμματος

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 8/11/07

Οντοκεντρικός Προγραμματισμός

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Αντικειμενοστρεφής Προγραμματισμός

Mεταβλητές (variables) και Σταθερές (constants)

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 4/3/2008

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 26/2/2008

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

a = 10; a = k; int a,b,c; a = b = c = 10;

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

Εισαγωγή στον Προγραμματισμό

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

οµές Επιλογής Εντολές if και switch

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 3 η : Επίλυση Προβληµάτων Χειµερινό Εξάµηνο 2011

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα

2.1 Αντικειµενοστρεφής προγραµµατισµός

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Προγραμματισμός Ι. Δείκτες. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Πανεπιστήµιο Πειραιά Τµήµα Εκπαιδευτικής Τεχνολογίας και Ψηφιακών Συστηµάτων. Εισαγωγή στη γλώσσα προγραµµατισµού. Java. Βασίλειος Βεσκούκης

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning

Βασικάχαρακτηριστικάτηςγλώσσας. Πίνακες, Έλεγχος Ροής και Βρόχοι

Κεφάλαιο 4: Συνθήκες Έλεγχου (if-else, switch) και Λογικοί τελεστές / παραστάσεις. (Διάλεξη 8)

Είδη εντολών. Απλές εντολές. Εντολές ελέγχου. Εκτελούν κάποια ενέργεια. Ορίζουν τον τρόπο με τον οποίο εκτελούνται άλλες εντολές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι String Interning

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα ως ορίσματα Εισαγωγή στις αναφορές

Εισαγωγή στη γλώσσα προγραμματισμού C++

32-bit signed υποδιαστολής) Double διπλής ακρίβειας 64-bit signed Char unicode character 16-bit Boolean Boolean true or false

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

Εισαγωγή στην γλώσσα προγραμματισμού C

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο)

ΣΕΜΙΝΑΡΙΟ JAVA. 5 η ιάλεξη

4. Εισαγωγή στη Java

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι

Η γλώσσα προγραμματισμού Strange

3 Αλληλεπίδραση Αντικειμένων

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΗ JAVA ΤΕΛΕΣΤΕΣ - ΜΕΤΑΒΛΗΤΕΣ

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Transcript:

ΣΕΜΙΝΑΡΙΟ JAVA 1 η ιάλεξη

ΕΙΣΑΓΩΓΙΚΑ ΓΙΑ ΤΗ ΟΜΗ ΤΗΣ JAVA Περιβάλλον ανά τυξης Download & Install Περιβάλλον εκτέλεσης Οργάνωση ληροφορίας Στόχος ενός εριβάλλοντος ανά τυξης / builder Α λό ρόγραµµα Έξοδος στην κονσόλα Τύ οι δεδοµένων

ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗΣ DOWNLOAD & INSTALL Το εριβάλλον ανά τυξης είναι το NetBeans 6.5 το ο οίο µ ορούµε να κατεβάσουµε α ό το www.netbeans.org ε ιλέγοντας Download και α ό τη νέα σελίδα στο κάτω µέρος της latest JDK with NetBeans IDE Java SE bundle. Εγκαθιστούµε µε τα defaults.

ΟΜΗ ΤΗΣ ΕΚΤΕΛΕΣΗΣ ΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΕ JAVA Bytecode vs Assembly, Java Virtual Machine, Operating System JVM Υ έρ Φορητότητα Αναβαθµισιµότητα JVM Α οµόνωση ιαχείριση µνήµης / Garbage Collection Κατά Μειωµένη α όδοση Μειωµέν ρόσβαση στον Η/Υ Native / Τυ ική εφαρµογή (.exe) (assembly) Εφαρµογή Java (.jar) (Bytecode) JVM OS Λειτουργικό Σύστηµα H/W Ηλεκτρονικός Υ ολογιστής

ΙΑ ΙΚΑΣΙΑ ΗΜΙΟΥΡΓΙΑΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΕ JAVA Συγγραφή IDE Text editor (notepad, vi) Building ( ιανοµή/εγκατάσταση) IDE javac Εκτέλεση IDE java Source Code (.java) Bytecode (.class) Source Code (.java) Bytecode (.class) Binary αρχείο (.jar) JVM για εκτέλεση

ΣΤΟΧΟΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ IDE & BUILDER 1/2 Περιγραφή IDE Menu / Toolbars Αριστερή στήλη : Projects / Files & Navigator Χώρος δεξιά : Editor (µε tabs) & Search/Output/Tasks ηµιουργία ενός project Α λό application Συγγραφή κώδικα [α λό Hello world αράδειγµα Παράλληλη αρουσίαση λειτουργιών του editor] System.out.println µήνυµατα Σχόλια : Βάζω την το ένα "sout" σε σχόλιο. Τι αλλάζει;

ΣΤΟΧΟΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ IDE & BUILDER 2/2 Build ( Συντακτικό κοµµάτι / σύνδεση µε βιβλιοθήκες) Εκτέλεση του ρογράµµατος Μέσα α ό το IDE Α ό εριβάλλον DOS Περιγραφή Class Main Κλήση συστήµατος (println) Import Namespaces

ΤΥΠΟΙ Ε ΟΜΕΝΩΝ 1/ Value ή Primitive τύ οι δεδοµένων Primitive boolean : Μόνο τιµές true ή false byte : ροσηmασµένος ακέραιος 8bit char : Ανα αράσταση 2byte Unicode short : ροσηmασµένος ακέραιος 16bit int : ροσηmασµένος ακέραιος 32bit long : ροσηmασµένος ακέραιος 64bit float : κλασµατικός α λής ακρίβειας double : κλασµατικός δι λής ακρίβειας Reference Αναφορά σε Object Όλα τα µη primitive

ΤΥΠΟΙ Ε ΟΜΕΝΩΝ 2/ Αναφέρεται σε αντικείµενο (instance στιγµιότυ ο) Τα αντικείµενα δηµιουργούνται µε «ειδικό» τρό ο ενώ «καταστρέφονται» αυτόµατα Reference ισοδύναµα των value τύ ων: ανα αριστούν τους βασικούς (primitive) τύ ους ( εριέχουν βοηθητικές συναρτήσεις και ληροφορίες) Μεταβλητή Reference Αντικείµενο (instance)

ΤΥΠΟΙ Ε ΟΜΕΝΩΝ 3/ Obj a = new Obj('X'); Reference Μεταβλητή a Μεταβλητή b Μεταβλητή c Obj b = a; Obj c = b; b = new Obj('Y ); a = null; c = b; Αντικείµενο X (instance)

ΜΕΤΑΒΛΗΤΕΣ & ΠΡΑΞΕΙΣ Μεταβλητές Ονοµασία Τύ ος δεδοµένων ήλωση : τύ ος / όνοµα / τιµή Εκχώρηση τιµής Αρχικο οίηση SOS Πράξεις Βασικές Προτεραιότητα ράξεων/τελεστών Μοναδιαίοι Πολλα λασιαστικοί Προσθατικοί Συγκρίσεις Λογική σύζευξη / διάζευξη Ανάθεση Παρενθέσεις Μόνο αρενθέσεις Προτεραιότητα Τελστών Postfix / Επιθεµατικοί. [] (args) post ++ -- Unary / Μοναδιαίοι Prefix / Προθεµατικοί Τύπος δεδοµένων (cast) Multiplicative Πολλαπλασιαστικοί! ~ unary + - pre ++ -- (type) new * / % Additive / Προσθετικοί + - Shift / Ολίσθησης << >> >>> Relational Συσχέτισης < <= > >= instanceof Equality / Ισότητας ==!= Bitwise AND Bitwise exclusive OR (XOR) Bitwise inclusive OR Logical / Λογικό AND & ^ && Logical / Λογικό OR Ternary / Τριαδικός?: Assignment = += -= etc

ΠΙΝΑΚΕΣ Αγκύλες Χρησιµο οιούνται α οκλειστικά για ίνακες Μέγεθος Ορίζεται, όχι µόνο στη δήλωση ήλωση Τύ ος δεδοµένων Όνοµα Προαιρετικά διάσταση Αναφορά σε στοιχείο Α ό 0 ως Μήκος -1 Αντικείµενο Μήκος ίνακα Κλάσση Arrays ιαγραφή Μέσω ανάθεσης µε null Περισσότερες διαστάσεις int[] pinakas1 = new int[10]; int pinakas2[]; pinakas2 = new int[100]; pinakas1[5] = pinakas2[12]; pinakas1[8]++; int L = pinakas1.length; Arrays.sort(pinakas2); pinakas1 = null;

ΚΕΙΜΕΝΟ STRING & CHARACTER Το κείµενο στη Java αριστάνεται σαν αντικείµενο κλάσης String Α οτελείται α ό χαρακτήρες (κλάση Character) Ε ίσης γράφονται ως κείµενο µέσα σε δι λά εισαγωγικά και αντιστοιχούν σε αντικείµενο String Ειδικοί χαρακτήρες µέσα στα δι λά εισαγωγικά, ξεκινάνε άντα µε \ και : n για αλλαγή γραµµής \ για το ίδιο το \ t για τον tab (στηλοθέτης) r για ε ιστροφή στην αρχή της γραµµής Ένας χαρακτήρας σε µονά εισαγωγικά αντιστοιχεί σε αντικείµενο Character. Ειδική συµ εριφορά τελεστών όταν εµ λέκεται String: Το + ενώνει το String µε άλλο String ή αν δεν είναι String το άλλο εµ λεκόµενο στοιχείο, ροσ αθεί να το µετατρέψει Το == ελέγχει τα αντικείµενα αν ταυτίζονται και όχι το εριεχόµενο String, άρα µ ορεί δύο αντικείµενα να έχουν το ίδιο κείµενο και το == να δώσει ψευδές στη σύγκριση! Το σωστό είναι το astring.equals(anotherstring)

ΠΑΡΑ ΕΙΓΜΑΤΑ STRING Η εκτέλεση της παρακάτω µεθόδου: ίνει το ακόλουθο αποτέλεσµα: public static void stringtest() { int[] x = new int[] {1,3,5,7,9,2,4,6,8,0; System.out.println("a" + "b"); System.out.println("1" + 2); System.out.println(1 + "2"); System.out.println(1 + 2 + "3"); System.out.println("1" + 2 + 3); System.out.println("A! " + (1+1==2)); System.out.println("" + x); System.out.println(x.toString()); System.out.println(Arrays.toString(x)); ab 12 12 33 123 A! true [I@42e816 [I@42e816 [1, 3, 5, 7, 9, 2, 4, 6, 8, 0]

ΕΛΕΓΧΟΣ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ 1/ if ή if / elseήif / else if / / else if / else Κάθε if ελέγχει µια συνθήκη η ο οία είναι υ οχρεωτικά µέσα σε αρενθέσεις Για το if ου ε αληθεύεται εκτελούνται οι αντίστοιχες εντολές Το else είναι ροεραιτικό, αλλά το ολύ ένα Το if είναι υ οχρεωτικό και µόνο ένα Τα else if είναι ροαιρετικά και α εριόριστα Η σειρά των συνθηκών ου εξετάζοναι είναι άντα α ό τη ειδική στην γενική Πάντα µε { αν και για 1 εντολή δεν α αιτούνται

ΠΑΡΑ ΕΙΓΜΑΤΑ IF 1/ //====================== Ex. #1 if (x < 0) { println("can't calc root! ); else { println("root is : " + Math.sqrt(x) ); //====================== Ex. #2 if (year % 400 == 0) { // ίσεκτο else if (year % 100 == 0) { // Μη δίσεκτο else if (year % 4 == 0) { // ίσεκτο else { // Μη δίσεκτο //====================== Ex. #3 if (year % 4 == 0) { if (year % 100 == 0) { if (year % 400 == 0) { // ίσεκτο else { else { else { // Μη δίσεκτο // ίσεκτο // Μη δίσεκτο

ΠΑΡΑ ΕΙΓΜΑΤΑ IF 2/ //====================== Ex. #4 if (kilos > 0) { // Do something else if (kilos == 0) { // Do Something more else { // Oops! This couldn t happen! // IT S A BUG!! //====================== Ex. #5 if (x == 0) { // Do this it s ok! // But it s a little bit // Looooong // Too many lines // So you see it s not that easy // to tell where it ends return; //====================== Ex. #6 if (x!= 0) return; // The same long // series of commands // but now you don t care // where the if ends // It works the other way around // You negate the condition to // end the execution, instead // of executing when all the // conditions are met! return;

ΕΛΕΓΧΟΣ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ 2/ while Σύνταξη ίδια µε το α λό if όµως οι εντολές του σώµατος ε αναλαµβάνονται εφόσον εξακολοθεί και ισχύει η συνθήκη. Εάν αρχικά η συνθήκη δεν ισχύει, τότε δεν εκτελείται καθόλου το σώµα. Προσοχή ώστε η συνθήκη κά οια στιγµή να µην ε αληθεύεται αλλιώς το σώµα θα εκτελείται συνεχώς. do / while Ίδιο µε το while, εκτελείται όµως ρώτα το σώµα του βρόχου και µετά ελέγχεται η συνθήκη. Γίνεται άντα τουλάχιστον µία ε ανάληψη.

ΠΑΡΑ ΕΙΓΜΑΤΑ WHILE //======================== Ex. #1 while (x > 1) { x = x / 2; //======================== Ex. #2 while (x > 1) { x *= 2; // Λάθος! Το x αυξάνει!! // Ατέρµονας βρόχος //======================== Ex. #4 do { a++; b = testone(a); c = b + testtwo(a, x); while (x!= 0) ; // Πρόβληµα, γιατί το x δεν αλλάζει // µέσα στο σώµα του βρόχου, άρα // Αν ισχύει η συνθήκη έστω και µία // φορά, τότε ο βρόχος θα εκτελείται // «για πάντα» //======================== Ex. #3 while (0 < 1) { // Ατέρµονας βρόχος // Εκτελείται «για πάντα» //======================== Ex. #5 while ((x = R.nextInt()) > 50) { // Ειδική γραφή, εκτελείται η // εκχώριση στο x και µετά // γίνεται ο έλεγχος // Do something

ΕΛΕΓΧΟΣ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ 3/ Α λό for 1 2 3 for (int i = 0; i < 5; i++) { 4 System.out.println("Iteration / Επανάληψη #" + i); Αντιστοίχιση του σχήµατος 1 : Α όδοση αρχικών τιµών 2 : Έλεγχος ου ρέ ει να ισχύει 3 : Μεταβολή σε κάθε βήµα της ε ανάληψης 4 : «Σώµα» του βρόχου Η σειρά εκτέλεσης είναι: Μια φορά στην αρχή 1, 2 Εφόσον ισχύει το 2, τότε εκτελούνται 4, 3, 2 και ε αναλαµβάνεται µόνο αυτό το βήµα

ΠΑΡΑ ΕΙΓΜΑΤΑ FOR //======================== Ex. #1 for (int i=1; i<n; i++) { println("hello! ); //======================== Ex. #2 for (int i=1; i<n; i++) { println(" ("i = " + i); //======================== Ex. #3 for (int i=1; i<pinak.length; i++) { println(" ("pinak[" + i + "] = " + pinak[i]); //======================== Ex. #4 for (int i=1; i<n; i++) { if (i % 5) continue; println(" ("i = " + i); //======================== Ex. #5 for (int i=1; i<n; i++) { x = f(i); if (x < 12) break; y = g(x);

Η ΛΕΙΤΟΥΡΓΙΑ ΤΩΝ ΑΓΚΙΣΡΩΝ { (BRACES Ή CURLY BRACKETS) Οµαδο οιούν τις εντολές ου εριέχονται ανάµεσα τους σαν µία. Σε αυτή την ερί τωση: Οι µεταβλητές ου ορίζονται µέσα στα άγκιστρα σταµατούν να «υ άρχουν» έξω α ό αυτά Οµαδο οιούν εντολές για χρήση µε τα if-elseif-else, while, for, κλ Οριοθετούν: Κλάσεις Μεθόδους Αρχικο οιούν ίνακες int[ ] a = new int [ ] { 1, 2, 3, 4, 5, 8, 8, 8 ;

ΛΕΞΙΛΟΓΙΟ Αγγλικά Ελληνικά Ε εξήγηση invoke reference primitive (data) type καλώ µέθοδο ή συνάρτηση αναφορά ρωτογεννής τύ ος (δεδοµένων) declaration δήλωση ήλωση µεθόδου, δηλαδή καθορίζονται οι αράµετροι και το α οτέλεσµα µιας συνάρτησης, δεν υ άρχει κώδικας definition ορισµός Ό ως η δήλωση αλλά εριλαµβάνεται και ο κώδικας operator τελεστής Το σύµβολο της ράξης. Μοναδιαίος, δυαδικός, τριαδικός. initialization αρχικο οίηση Α όδοση αρχικής τιµής σε µεταβλητές method µέθοδος Υ ορουτίνα ή συνάρτηση ου σχετίζεται µε (ανήκει σε) ένα αντικείµενο