Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών
Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας με την εκμάθηση της Java (Εκμάθηση Πινάκων) Δομές Δεδομένων - Εισαγωγή στη JAVA 2
Λίστα με τα απαραίτητα Για να γράψω το πρώτο πρόγραμμα σε Java χρειάζομαι τουλάχιστον: 1. Την πλατφόρμα της Java JRE (Java Runtime Environment) JDK (Java Development Kit) H Java αυτή τη στιγμή βρίσκεται στην έκδοση 1.8 Update 60. 2. Έναν επεξεργαστή απλού κειμένου (text editor) π.χ. MS Word, notepad++ κτλ. Δομές Δεδομένων - Εισαγωγή στη JAVA 3
Εναλλακτικά: Εξελιγμένα εργαλεία ανάπτυξης εφαρμογών Δομές Δεδομένων - Εισαγωγή στη JAVA 4
Δημιουργώντας το πρώτο μου πρόγραμμα Δημιουργώ στον επεξεργαστή κειμένου ένα αρχείο πηγαίου κώδικα (source file) με κατάληξη.java Μεταγλωττίζω το αρχείο πηγαίου κώδικα σε αρχείο δυαδικού κώδικα (bytecode) με κατάληξη.class με τη βοήθεια του μεταγλωττιστή (compiler) Εκτελώ τον δυαδικό κώδικα με τη βοήθεια της εικονικής μηχανής (Virtual Machine) που είναι ο διερμηνέας(interpreter) της Java Δομές Δεδομένων - Εισαγωγή στη JAVA 5
Γράφεις μια φορά, εκτελείς παντού ( write once, run anywhere ) HelloWorld.java Διερμηνέας Διερμηνέας Διερμηνέας Δομές Δεδομένων - Εισαγωγή στη JAVA 6
Ένα νέο project στον Eclipse Από το μενού: File -> New -> Project Δομές Δεδομένων - Εισαγωγή στη JAVA 7
Μιανέακλάση Δεξί κλίκ πάνω στο project -> Απότομενού: File -> New -> Class Δομές Δεδομένων - Εισαγωγή στη JAVA 8
Δημιουργία του πηγαίου κώδικα /** * The HelloWorld class implements an application that * simply displays "Hello World!" to the standard output. */ class HelloWorld { public static void main(string[] args){ /* Displays"Hello World on the console */ System.out.println("Hello World!"); // end of main method // end of class HelloWorld Προσοχή! Η Java είναι case-sensitive HelloWorld helloworld Δομές Δεδομένων - Εισαγωγή στη JAVA 9
Μεταγλώττιση και εκτέλεση! Μενού Run Run As... Java Application Δομές Δεδομένων - Εισαγωγή στη JAVA 10
Και το αποτέλεσμα! Δομές Δεδομένων - Εισαγωγή στη JAVA 11
Δεύτερη Άσκηση Άθροισμα Δισδιάστατων Πινάκων: 1. Δημιουργία & αρχικοποίηση δύο πινάκων. Ένας με τιμές απευθείας στην αρχικοποίηση Ένας με τυχαίες τιμές χρήση της συνάρτησης Math.random() και της εντολής for. 2. Εκτύπωση περιεχομένων πινάκων. 3. Άθροισμα πινάκων σε τρίτο πινακα. 4. Εκτύπωση περιεχομένων τελικού πίνακα. 5. Μπόνους Έκπληξη... Δομές Δεδομένων - Εισαγωγή στη JAVA 12
Αρχικοποίηση Μεταβλητών Μεταβλητές για τα for ή while loops: int i,j; int d1 = 0; int d2 = 0; Δομές Δεδομένων - Εισαγωγή στη JAVA 13
Αρχικοποίηση Πινάκων Αρχικοποίηση πινάκων Απευθείας ανάθεση τιμών int[][] array = {{16,4,98,{56,77,38,{54,63,7; Δήλωση και δέσμευση μνήμης πινάκων σε δύο γραμμές κώδικα int[][] array1; array1= new int[3][3]; Αρχικοποίηση και δήλωση πινάκων στην ίδια σειρά int[][] array2 = new int[3][3]; Δομές Δεδομένων - Εισαγωγή στη JAVA 14
Χρήση Συνάρτησης Math.random( ) Η κλάση Math περιλαμβάνετε στις βασικές βιβλιοθήκες της Java. Η συνάρτηση random( ) μας δίνει έναν πραγματικό αριθμό στο διάστημα[0,1). Μπορούμε να μεταβάλλουμε το διάστημα των αριθμών προσθέτοντας και πολλαπλασιάζοντας την συνάρτηση με τους κατάλληλους αριθμούς. Δομές Δεδομένων - Εισαγωγή στη JAVA 15
Αρχικοποίηση πίνακα τυχαίων while(d1 < 3){ while(d2 < 3){ d1++; d2 = 0; αριθμώνμε while array1[d1][d2] = (int) (Math.random() * 100); d2++; Δομές Δεδομένων - Εισαγωγή στη JAVA 16
Αρχικοποίηση πίνακα τυχαίων αριθμών με for for(i = 0;i < 3;i++){ for(j = 0;j < 3;j++){ array1[i][j] = (int) (Math.random() * 100); Δομές Δεδομένων - Εισαγωγή στη JAVA 17
Εκτύπωση Πίνακα int x= array.length; System.out.println("Matrix 1 : "); for(i = 0; i < x; i++) { for(j = 0; j < x; j++) { System.out.print(" "+ array[i][j]); System.out.println(); Δομές Δεδομένων - Εισαγωγή στη JAVA 18
Άθροισμα Πινάκων for( i = 0; i < x; i++) { for( j = 0; j < x; j++) { array2[i][j] =(array[i][j]+array1[i][j]); Δομές Δεδομένων - Εισαγωγή στη JAVA 19
Εκτύπωση Έκπληξη if (i< j) { System.out.print(" "+ (array2[i][j]+1) ); else if (i> j) { else { System.out.print(" "+ (array2[i][j]+2) ); System.out.print(" "+ (array2[i][j])); Δομές Δεδομένων - Εισαγωγή στη JAVA 20