java:arrays

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
java:arrays [2015/04/19 18:52]
gthanos [Πίνακες]
java:arrays [2015/07/07 17:28]
gthanos [Πίνακες δύο διαστάσεων]
Line 1: Line 1:
 ====== Πίνακες ====== ====== Πίνακες ======
  
-Οι πίνακες στην γλώσσα προγραμματισμού Java ορίζονται σε αναλογία με την C ως ένα σύνολο τιμών του ιδίου τύπου δεδομένων του οποίου ο αριθμός των μελών είναι ​δεδομένος και δεν αλλάζει.+Οι πίνακες στην γλώσσα προγραμματισμού ​**Java** ορίζονται σε αναλογία με την ​**C** ως ένα σύνολο τιμών του ιδίου τύπου δεδομένων του οποίου ο αριθμός των μελών ​ορίζεται κατά την αρχικοποίηση του πίνακα. Η αρχικοποίηση ​ενός πίνακα γίνεται με χρήση του τελεστή **new**, σε μία δήλωση της μορφής 
 + 
 +<code java> 
 +int [] anArray; 
 +anArray = new int[5]; 
 +     ή 
 +int [] anArray = new int[5]; 
 +</​code>​ 
 + 
 +Ο παραπάνω κώδικας ορίζει ​ένα πίνακα τύπου **int** μεγέθους **5**. Η αρίθμηση των στοιχείων του πίνακα ξεκινάει από τον ​δείκτη 0 και αυξάνει. Για παράδειγμα για ένα πίνακα 10 θέσεων,​ η αρίθμηση των στοιχείων του είναι **0-9**, όπως φαίνεται στο παρακάτω σχήμα.
  
 {{  :​java:​objects-tenelementarray.gif ​ }} {{  :​java:​objects-tenelementarray.gif ​ }}
  
-Μπορείτε να δείτε ενδεικτικά το παρακάτω πρόγραμμα+Μπορείτε να δείτε ενδεικτικά το παρακάτω πρόγραμμα, όπου ορίζεται ένας πίνακας ακεραίων μεγέθους 3, ο πίνακας γεμίζει με τιμές και στη συνέχεια εκτυπώνονται τα περιεχόμενα του.
  
 <code java ArrayDemo.java>​ <code java ArrayDemo.java>​
Line 21: Line 30:
         ​         ​
         for(int i=0; i<​anArray.length;​ i++) {         for(int i=0; i<​anArray.length;​ i++) {
-          System.out.println("​Element at index "​+i+":​ "+ anArray[0]);​+          System.out.println("​Element at index "+i+"/"​+anArray.length+": "+ anArray[0]);​
         }         }
     }     }
Line 28: Line 37:
  
 <WRAP important 80% round center> <WRAP important 80% round center>
-Οι πίνακες στη Java υλοποιούνται ως αντικείμενο. Κάθε αντικείμενο έχει ένα πεδίο **length** που αποθηκεύει το μέγεθος του πίνακα (π.χ. ''​anArray.length''​) και το οποίο δεν αλλάζει (final field). Μέσω του πεδίου length μπορείτε να έχετε πρόσβαση στο μέγεθος του κάθε πίνακα.+Οι πίνακες στη Java υλοποιούνται ως αντικείμενα (//θα τα δούμε αναλυτικά παρακάτω//​). Κάθε αντικείμενο έχει ένα πεδίο **length** που αποθηκεύει το μέγεθος του πίνακα (π.χ. ''​anArray.length''​) και το οποίο δεν ​μεταβάλει την τιμή του ​(δηλαδή είναι ​final field). Μέσω του πεδίου length μπορείτε να έχετε πρόσβαση στο μέγεθος του κάθε πίνακα.
 </​WRAP>​ </​WRAP>​
  
 ===== Πίνακες δύο διαστάσεων ===== ===== Πίνακες δύο διαστάσεων =====
  
-Δείτε το παρακάτω πρόγραμμα που περιέχει ένα πίνακα ​δύο ​διαστάσεων. __Η ιδιαιτερότητα της Java σε σχέση με την C είναι ότι μπορούμε να έχουμε διαφορετικό μήκος ​στηλών σε κάθε γραμμή__.+Οι πίνακες δύο διαστάσεων ορίζονται σε αναλογία με τους πίνακες μίας διάστασης ​ως εξής 
 + 
 +<code java> 
 +int [][] anArray; 
 +anArray = new int[3][5];​ 
 +      ή 
 +int [][] anArray = new int[3][5];​ 
 +</​code>​ 
 + 
 +Το παραπάνω ​παράδειγμα ορίζει ένα πίνακα διαστάσεων ​**3x5**. __Η ιδιαιτερότητα της Java σε σχέση με την C είναι ότι μπορούμε να έχουμε διαφορετικό ​αριθμό στηλών σε κάθε γραμμή ​του πίνακα__. Δείτε το παρακάτω πρόγραμμα που περιέχει ένα πίνακα δύο διαστάσεων. Στην πρώτη γραμμή του πίνακα έχουμε 3 στοιχεία,​ ενώ στην 2η δύο στοιχεία.
 <code java MultiDimArrayDemo.java>​ <code java MultiDimArrayDemo.java>​
 class MultiDimArrayDemo { class MultiDimArrayDemo {
java/arrays.txt · Last modified: 2018/02/16 17:25 by gthanos