Πίνακες σε Java

Τι είναι Java Πίνακες;

Java Παράταξη είναι ένας πολύ κοινός τύπος δομής δεδομένων που περιέχει όλες τις τιμές δεδομένων του ίδιου τύπου δεδομένων. Τα στοιχεία δεδομένων που τοποθετούνται στον πίνακα ονομάζονται στοιχεία και το πρώτο στοιχείο του πίνακα ξεκινά με μηδέν δείκτη. Οι πίνακες κληρονομούν την κλάση αντικειμένου και υλοποιούν τις σειριοποιήσιμες και κλωνοποιήσιμες διεπαφές. Μπορούμε να αποθηκεύσουμε πρωτόγονες τιμές ή αντικείμενα σε έναν πίνακα.

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

x0=0;
x1=1;
x2=2;
x3=3;
x4=4;
x5=5;

με αυτό …

x[0]=0;
x[1]=1;
x[2]=2;
x[3]=3;
x[4]=4;
x[5]=5;

Πώς βοηθά αυτό είναι ότι μια μεταβλητή μπορεί να παραπέμπει στο ευρετήριο (τον αριθμό στην αγκύλα[]) εύκολα βρόχο.

for(count=0; count<5; count++) {
     System.out.println(x[count]);
   }

Τύποι πίνακα σε Java

Υπάρχουν δύο τύποι πίνακα.

  1. Μονοδιάστατος πίνακας
  2. Πολυδιάστατη σειρά

Μεταβλητές συστοιχίας

Η χρήση ενός πίνακα στο πρόγραμμά σας είναι α Διαδικασία 3 βημάτων -

1) Δήλωση του Πίνακα σας

2) Κατασκευή του Array σας

3) Αρχικοποιήστε τον πίνακα σας

1) Δήλωση του Array σας

Σύνταξη

<elementType>[] <arrayName>;

or

 <elementType> <arrayName>[];

Παράδειγμα:

int intArray[];
 // Defines that intArray is an ARRAY variable which will store integer values
int []intArray;

2) Κατασκευή πίνακα

 arrayname = new dataType[]

Παράδειγμα:

intArray = new int[10]; // Defines that intArray will store 10 integer values

Δήλωση και Κατασκευή σε συνδυασμό

int intArray[] = new int[10];

3) Αρχικοποιήστε έναν πίνακα

intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the array

intArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array

Δήλωση και προετοιμασία ενός πίνακα

[]  = {};
Παράδειγμα:
 int intArray[] = {1, 2, 3, 4};
// Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.

Πρόγραμμα πρώτου πίνακα

Βήμα 1) Αντιγράψτε τον παρακάτω κώδικα σε ένα πρόγραμμα επεξεργασίας.

class ArrayDemo{
     public static void main(String args[]){
        int array[] = new int[7];
        for (int count=0;count<7;count++){
           array[count]=count+1;
       }
       for (int count=0;count<7;count++){
           System.out.println("array["+count+"] = "+array[count]);
       }
      //System.out.println("Length of Array  =  "+array.length);
      // array[8] =10;
      }
}

Βήμα 2) Αποθηκεύστε, μεταγλωττίστε και εκτελέστε τον κώδικα. Παρατηρήστε την έξοδο

Αναμενόμενη παραγωγή:

array[0] = 1
array[1] = 2
array[2] = 3
array[3] = 4
array[4] = 5
array[5] = 6
array[6] = 7

Βήμα 3) Αν το x είναι αναφορά σε πίνακα, x.μήκος θα σας δώσει το μήκος του πίνακα.

Γραμμή χωρίς σχόλια #10. Αποθηκεύστε, μεταγλωττίστε και εκτελέστε τον κώδικα. Παρατηρήστε την έξοδο

Length of Array  =  7

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

Γραμμή χωρίς σχόλια #11. Αποθηκεύστε, μεταγλωττίστε και εκτελέστε τον κώδικα. Παρατηρήστε την έξοδο

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
        at ArrayDemo.main(ArrayDemo.java:11)
Command exited with non-zero status 1

Βήμα 5) Το ArrayIndexOutOfBoundsException απορρίπτεται. Στην περίπτωση του C, ο ίδιος κωδικός θα έδειχνε κάποια τιμή σκουπιδιών.

Java Πίνακας: Περάστε με αναφορά

Οι πίνακες μεταβιβάζονται σε συναρτήσεις μέσω αναφοράς ή ως δείκτης σε
το πρωτότυπο. Αυτό σημαίνει οτιδήποτε κάνετε στον πίνακα μέσα στο
η λειτουργία επηρεάζει το πρωτότυπο.

Παράδειγμα: Για να καταλάβετε οι Πίνακες μεταβιβάζονται με αναφορά

Βήμα 1) Αντιγράψτε τον παρακάτω κώδικα σε ένα πρόγραμμα επεξεργασίας

class ArrayDemo {
   public static void passByReference(String a[]){
     a[0] = "Changed";
   }
 
   public static void main(String args[]){
      String []b={"Apple","Mango","Orange"};
      System.out.println("Before Function Call    "+b[0]);
      ArrayDemo.passByReference(b);
      System.out.println("After Function Call    "+b[0]);
   }
}

Βήμα 2) Αποθηκεύστε, μεταγλωττίστε και εκτελέστε τον κώδικα. Παρατηρήστε την έξοδο

Αναμενόμενη παραγωγή:

Before Function Call    Apple
After Function Call    Changed

Πολυδιάστατοι πίνακες

Οι πολυδιάστατοι πίνακες είναι στην πραγματικότητα πίνακες πινάκων.

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

Ex: int twoD[ ][ ] = new int[4][5] ;

Όταν εκχωρείτε μνήμη για έναν πολυδιάστατο πίνακα, χρειάζεται μόνο να καθορίσετε τη μνήμη για την πρώτη (αριστερότερη) διάσταση.

Μπορείτε να εκχωρήσετε τις υπόλοιπες διαστάσεις ξεχωριστά.

In Java, το μήκος του πίνακα κάθε πίνακα σε έναν πολυδιάστατο πίνακα είναι υπό τον έλεγχό σας.

Παράδειγμα

public class Guru99 {
public static void main(String[] args) {

// Create 2-dimensional array.
  int[][] twoD = new int[4][4];

  // Assign three elements in it.
  twoD[0][0] = 1;
  twoD[1][1] = 2;
  twoD[3][2] = 3;
  System.out.print(twoD[0][0] + " ");
}

}

Αναμενόμενη παραγωγή:

1