Java Array (με παραδείγματα)

Σε αυτό το σεμινάριο, θα μάθουμε να δουλεύουμε με πίνακες στο Java. Θα μάθουμε να δηλώνουμε, να αρχικοποιούμε και να έχουμε πρόσβαση σε στοιχεία πίνακα με τη βοήθεια παραδειγμάτων.

Στον προγραμματισμό υπολογιστών, ένας πίνακας είναι μια συλλογή παρόμοιων τύπων δεδομένων. Για παράδειγμα, εάν θέλουμε να αποθηκεύσουμε τα ονόματα των 100 ατόμων, τότε μπορούμε να δημιουργήσουμε έναν πίνακα του τύπου συμβολοσειράς που μπορεί να αποθηκεύσει 100 ονόματα.

 String() array = new String(100);

Ο αριθμός των τιμών στον πίνακα Java είναι σταθερός. Δηλαδή, ο παραπάνω πίνακας δεν μπορεί να αποθηκεύσει περισσότερα από 100 στοιχεία.

Πώς να δηλώσετε έναν πίνακα στην Java;

Στην Java, μπορείτε να δηλώσετε έναν πίνακα.

 dataType() arrayName;
  • Τύπος δεδομένων - μπορεί να είναι πρωτόγονες τύπους δεδομένων, όπως int, char, double, byte, κλπ ή αντικείμενα Java
  • arrayName - είναι ένα αναγνωριστικό

Για παράδειγμα,

 double() data;

Εδώ, τα δεδομένα είναι ένας πίνακας που μπορεί να περιέχει τιμές τύπου double.

Όμως, πόσα στοιχεία μπορούν να τοποθετήσουν αυτήν την αναμονή;

Καλή ερώτηση! Για να καθορίσουμε τον αριθμό των στοιχείων που μπορεί να διατηρήσει ένας πίνακας, πρέπει να διαθέσουμε μνήμη για τον πίνακα στην Java. Για παράδειγμα,

 // declare an array double() data; // allocate memory data = new Double(10);

Εδώ, ο πίνακας μπορεί να αποθηκεύσει 10 στοιχεία. Μπορούμε επίσης να πούμε ότι το μέγεθος ή το μήκος του πίνακα είναι 10.

Στην Java, μπορούμε να δηλώσουμε και να εκχωρήσουμε μνήμη ενός πίνακα σε μία μόνο δήλωση. Για παράδειγμα,

 double() data = new double(10);

Πώς να ξεκινήσετε τις συστοιχίες στην Java;

Στην Java, μπορούμε να προετοιμάσουμε πίνακες κατά τη δήλωση. Για παράδειγμα,

 //declare and initialize and array int() age = (12, 4, 5, 2, 5);

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

Λάβετε υπόψη ότι δεν παρέχουμε το μέγεθος του πίνακα. Σε αυτήν την περίπτωση, ο μεταγλωττιστής Java καθορίζει αυτόματα το μέγεθος μετρώντας τον αριθμό των στοιχείων στον πίνακα (δηλ. 5).

Στον πίνακα Java, κάθε θέση μνήμης σχετίζεται με έναν αριθμό. Ο αριθμός είναι γνωστός ως ευρετήριο πίνακα. Μπορούμε επίσης να προετοιμάσουμε πίνακες στην Java, χρησιμοποιώντας τον αριθμό ευρετηρίου. Για παράδειγμα,

 // declare an array int() age = new int(5); // initialize array age(0) = 12; age(1) = 4; age(2) = 5;… 
Αρχικοποίηση Java Arrays

Σημείωση :

  • Οι δείκτες συστοιχιών ξεκινούν πάντα από το 0. Δηλαδή, το πρώτο στοιχείο ενός πίνακα βρίσκεται στο ευρετήριο 0.
  • Εάν το μέγεθος ενός πίνακα είναι n, τότε το τελευταίο στοιχείο του πίνακα θα βρίσκεται στο ευρετήριο n-1.

Πώς να αποκτήσετε πρόσβαση σε στοιχεία μιας συστοιχίας στην Java;

Μπορούμε να έχουμε πρόσβαση στο στοιχείο ενός πίνακα χρησιμοποιώντας τον αριθμό ευρετηρίου. Εδώ είναι η σύνταξη για την πρόσβαση σε στοιχεία ενός πίνακα,

 // access array elements array(index)

Ας δούμε ένα παράδειγμα πρόσβασης σε στοιχεία πίνακα χρησιμοποιώντας αριθμούς ευρετηρίου.

Παράδειγμα: Access Array Elements

 class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5, 2, 5); // access each array elements System.out.println("Accessing Elements of Array:"); System.out.println("First Element: " + age(0)); System.out.println("Second Element: " + age(1)); System.out.println("Third Element: " + age(2)); System.out.println("Fourth Element: " + age(3)); System.out.println("Fifth Element: " + age(4)); ) )

Παραγωγή

 Πρόσβαση στα στοιχεία της σειράς: Πρώτο στοιχείο: 12 Δεύτερο στοιχείο: 4 Τρίτο στοιχείο: 5 Τέταρτο στοιχείο: 2 Πέμπτο στοιχείο: 5

Στο παραπάνω παράδειγμα, σημειώστε ότι χρησιμοποιούμε τον αριθμό ευρετηρίου για πρόσβαση σε κάθε στοιχείο του πίνακα.

Μπορούμε να χρησιμοποιήσουμε βρόχους για πρόσβαση σε όλα τα στοιχεία του πίνακα ταυτόχρονα.

Βρόχος μέσω στοιχείων σειράς

Στην Java, μπορούμε επίσης να βρούμε κάθε στοιχείο του πίνακα. Για παράδειγμα,

Παράδειγμα: Χρήση για βρόχο

 class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5); // loop through the array // using for loop System.out.println("Using for Loop:"); for(int i = 0; i < age.length; i++) ( System.out.println(age(i)); ) ) )

Παραγωγή

 Χρήση για βρόχο: 12 4 5

Στο παραπάνω παράδειγμα, χρησιμοποιούμε το Loop in Java για να επαναλάβουμε κάθε στοιχείο του πίνακα. Παρατηρήστε την έκφραση μέσα στον βρόχο,

 age.length

Εδώ, χρησιμοποιούμε την lengthιδιότητα του πίνακα για να πάρουμε το μέγεθος του πίνακα.

We can also use the for-each loop to iterate through the elements of an array. For example,

Example: Using the for-each Loop

 class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5); // loop through the array // using for loop System.out.println("Using for-each Loop:"); for(int a : age) ( System.out.println(a); ) ) )

Output

 Using for-each Loop: 12 4 5

Example: Compute Sum and Average of Array Elements

 class Main ( public static void main(String() args) ( int() numbers = (2, -9, 0, 5, 12, -25, 22, 9, 8, 12); int sum = 0; Double average; // access all elements using for each loop // add each element in sum for (int number: numbers) ( sum += number; ) // get the total number of elements int arrayLength = numbers.length; // calculate the average // convert the average from int to double average = ((double)sum / (double)arrayLength); System.out.println("Sum = " + sum); System.out.println("Average = " + average); ) )

Output:

 Sum = 36 Average = 3.6

In the above example, we have created an array of named numbers. We have used the for… each loop to access each element of the array.

Inside the loop, we are calculating the sum of each element. Notice the line,

 int arrayLength = number.length;

Here, we are using the length attribute of the array to calculate the size of the array. We then calculate the average using:

 average = ((double)sum / (double)arrayLength);

As you can see, we are converting the int value into double. This is called type casting in Java. To learn more about typecasting, visit Java Type Casting.

Multidimensional Arrays

Οι πίνακες που έχουμε αναφέρει μέχρι τώρα ονομάζονται μονοδιάστατες συστοιχίες. Ωστόσο, μπορούμε να δηλώσουμε πολυδιάστατους πίνακες στην Java.

Ένας πολυδιάστατος πίνακας είναι ένας πίνακας συστοιχιών. Δηλαδή, κάθε στοιχείο ενός πολυδιάστατου πίνακα είναι ένας ίδιος ένας πίνακας. Για παράδειγμα,

 double()() matrix = ((1.2, 4.3, 4.0), (4.1, -1.1) );

Εδώ, έχουμε δημιουργήσει έναν πολυδιάστατο πίνακα που ονομάζεται matrix. Είναι ένας δισδιάστατος πίνακας. Για να μάθετε περισσότερα, επισκεφθείτε τον πολυδιάστατο πίνακα Java.

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

  • Java Copy Array
  • Πρόγραμμα Java για εκτύπωση μιας σειράς
  • Πρόγραμμα Java για συνένωση δύο συστοιχιών
  • Java ArrayList στο Array και Array στο ArrayList
  • Δυναμική συστοιχία Java

ενδιαφέροντα άρθρα...