array data types int array
Σε αυτό το σεμινάριο, θα συζητήσουμε τους πίνακες Java με διαφορετικούς τύπους δεδομένων στοιχείων με παραδείγματα:
Στα προηγούμενα μαθήματά μας, συζητήσαμε ότι ο πίνακας είναι μια συλλογή στοιχείων του ίδιου τύπου δεδομένων με συνεχή τρόπο. Μπορείτε να δηλώσετε πίνακα με τους περισσότερους από τους πρωτόγονους τύπους δεδομένων και να τους χρησιμοποιήσετε στο πρόγραμμά σας.
Ορισμένοι πίνακες όπως πίνακες χαρακτήρων ή πίνακες συμβολοσειρών συμπεριφέρονται λίγο διαφορετικά από τους υπόλοιπους τύπους δεδομένων. Σε αυτό το σεμινάριο, θα σας καθοδηγήσουμε σε πίνακες με διαφορετικούς τύπους δεδομένων και θα συζητήσουμε τη χρήση τους σε προγράμματα Java δίνοντας παραδείγματα.
=> Επισκεφθείτε εδώ για να μάθετε Java από το μηδέν.
Τι θα μάθετε:
Τύποι δεδομένων Java Array
Integer Array
Μπορείτε να χρησιμοποιήσετε έναν πίνακα με στοιχεία του αριθμητικού τύπου δεδομένων. Το πιο συνηθισμένο είναι ο ακέραιος τύπος δεδομένων (int array στη Java).
Το παρακάτω πρόγραμμα απεικονίζει τη χρήση του πίνακα με τον τύπο δεδομένων int.
import java.util.*; public class Main { public static void main(String() args) { int() oddArray = {1,3,5,7,9}; //array of integers System.out.println('Array of odd elements:' + Arrays.toString(oddArray)); int() intArray = new int(10); for(int i=0;i<10;i++){ //assign values to array intArray(i) = i+2; } System.out.println('Array of Integer elements:' + Arrays.toString(intArray)); } }
Παραγωγή:
Το παραπάνω πρόγραμμα ορίζει έναν πίνακα με αρχικές τιμές και έναν άλλο πίνακα στον οποίο οι τιμές εκχωρούνται σε ένα For Loop.
Διπλή συστοιχία Java
Ένας πίνακας με στοιχεία διπλού τύπου είναι ένας άλλος αριθμητικός πίνακας.
Το παρακάτω παράδειγμα δείχνει τη διπλή συστοιχία στην Java.
import java.util.*; public class Main { public static void main(String() args) { double() d_Array = new double(10); //array of doubles for(int i=0;i<10;i++){ d_Array(i) = i+1.0; //assign values to double array } //print the array System.out.println('Array of double elements:' + Arrays.toString(d_Array)); } }
Παραγωγή:
Στο παραπάνω πρόγραμμα, αρχικοποιούμε τη διπλή συστοιχία μέσω βρόχου και προβάλλουμε τα περιεχόμενά της.
Byte Array
Ένα byte στην Java είναι τα δυαδικά δεδομένα που έχουν μέγεθος 8-bit. Ο πίνακας byte αποτελείται από στοιχεία τύπου «byte» και χρησιμοποιείται κυρίως για την αποθήκευση δυαδικών δεδομένων.
Το μειονέκτημα του πίνακα byte είναι ότι πρέπει πάντα να φορτώνετε τα δεδομένα byte στη μνήμη. Αν και θα πρέπει να αποφύγετε τη μετατροπή δεδομένων byte, ενδέχεται να είναι απαραίτητο μερικές φορές να μετατρέψετε τα δεδομένα byte σε συμβολοσειρά και αντίστροφα.
Το παρακάτω παράδειγμα προγράμματος δείχνει έναν πίνακα byte που μετατρέπεται σε συμβολοσειρά χρησιμοποιώντας έναν κατασκευαστή συμβολοσειρών.
import java.util.*; public class Main { public static void main(String() args) { byte() bytes = 'Hello World!!'.getBytes(); //initialize the bytes array //Convert byte() to String String s = new String(bytes); System.out.println(s); } }
Παραγωγή:
πώς μπορώ να ανοίξω αρχεία .jar
Το παραπάνω πρόγραμμα ορίζει έναν πίνακα byte και μετά τον μεταδίδει στον κατασκευαστή String για να τον μετατρέψει σε String.
Μπορείτε επίσης να μετατρέψετε έναν πίνακα byte σε συμβολοσειρά χρησιμοποιώντας τη μέθοδο κωδικοποίησης Base64 που είναι διαθέσιμη από το Java 8 και μετά. Το πρόγραμμα αφήνεται στους αναγνώστες για εφαρμογή.
Boolean Array
Ο πίνακας Boolean στην Java αποθηκεύει μόνο τιμές τύπου Boolean, δηλαδή είτε true είτε false. Η προεπιλεγμένη τιμή που είναι αποθηκευμένη στο Boolean array είναι «false».
Δίνεται παρακάτω είναι ένα παράδειγμα μιας συστοιχίας Boolean.
import java.util.*; public class Main { public static void main(String args()) { //declare and allocate memory boolean bool_array() = new boolean(5); //assign values to first 4 elements bool_array(0) = true; bool_array(1) = false; bool_array(2) = true; bool_array(3) = false; //print the array System.out.println('Java boolean Array Example:' + Arrays.toString(bool_array)); } }
Παραγωγή:
Σημειώστε ότι στο παραπάνω πρόγραμμα μόνο τα πρώτα τέσσερα στοιχεία έχουν εκχωρηθεί ρητές τιμές. Όταν εκτυπωθεί ο πίνακας, το τελευταίο στοιχείο έχει προεπιλεγμένη τιμή false.
Σειρά χαρακτήρων
Οι πίνακες χαρακτήρων ή οι πίνακες Char στη Java περιέχουν μεμονωμένους χαρακτήρες ως στοιχεία. Οι συστοιχίες χαρακτήρων λειτουργούν ως buffer χαρακτήρων και μπορούν εύκολα να τροποποιηθούν, σε αντίθεση με το Strings. Οι πίνακες χαρακτήρων δεν χρειάζονται εκχωρήσεις και είναι πιο γρήγορες και αποτελεσματικές.
Το παρακάτω πρόγραμμα δείχνει την υλοποίηση του πίνακα χαρακτήρων.
import java.util.*; public class Main { public static void main(String() args) { char() vowel_Array = {'a', 'e', 'i', 'o', 'u'}; //character array of vowels System.out.println('Character array containing vowels:'); //print the array for (int i=0; i Παραγωγή:

Το παραπάνω πρόγραμμα δηλώνει έναν πίνακα χαρακτήρων που αποτελείται από αγγλικά φωνήεντα. Αυτά τα φωνήεντα στη συνέχεια εκτυπώνονται επαναλαμβάνοντας τον πίνακα χαρακτήρων χρησιμοποιώντας το loop.
Java Array Of Strings
Μια συμβολοσειρά στην Java είναι μια ακολουθία χαρακτήρων. Για παράδειγμα, 'Hello' είναι μια συμβολοσειρά στην Java. Ένας πίνακας μιας συμβολοσειράς είναι μια συλλογή από χορδές. Όταν ο πίνακας συμβολοσειρών δεν έχει αρχικοποιηθεί ή εκχωρηθεί τιμές, η προεπιλογή είναι μηδενική.
Το ακόλουθο πρόγραμμα παρουσιάζει τη χρήση μιας σειράς συμβολοσειρών στην Java.
import java.util.*; public class Main { public static void main(String() args) { String() num_Array = {'one', 'two', 'three', 'four', 'five'}; //string array System.out.println('String array with number names:'); System.out.print(Arrays.toString(num_Array)); } }
Παραγωγή:

Στον παραπάνω κώδικα, έχουμε έναν πίνακα συμβολοσειρών που αποτελείται από αριθμούς μέχρι πέντε. Στη συνέχεια, χρησιμοποιώντας την κλάση Arrays, εκτυπώσαμε τον πίνακα συμβολοσειρών με τη μέθοδο toString.
Μπορείτε επίσης να χρησιμοποιήσετε το βελτιωμένο για βρόχο (για το καθένα) ή για το βρόχο για να επαναλάβετε μέσω του πίνακα συμβολοσειρών.
Κενή συστοιχία στην Ιάβα
Μπορείτε να έχετε κενές συστοιχίες στην Java, δηλαδή να ορίσετε έναν πίνακα στην Java με 0 ως διάσταση.
Εξετάστε τις ακόλουθες δηλώσεις πίνακα.
int () myArray = νέο int (); // σφάλμα μεταγλωττιστή
int () intArray = νέο int (0); // μεταγλωττίζει ωραία
Η διαφορά μεταξύ των παραπάνω δηλώσεων πίνακα είναι ότι η πρώτη δήλωση δεν έχει καθορίσει καμία διάσταση. Μια τέτοια δήλωση δεν θα καταρτιστεί.
Η δεύτερη δήλωση, ωστόσο, δηλώνει έναν πίνακα με διάσταση ως 0, δηλαδή αυτός ο πίνακας δεν μπορεί να αποθηκεύσει κανένα στοιχείο σε αυτό. Αυτή η δήλωση θα καταρτίσει πρόστιμο. Η δεύτερη δήλωση αφορά τον κενό πίνακα. Ο κενός πίνακας είναι βασικά ένας πίνακας με 0 διαστάσεις, ώστε να μην αποθηκεύονται στοιχεία σε αυτόν τον πίνακα.
Τότε, γιατί χρειαζόμαστε κενές συστοιχίες στα προγράμματά μας; Μία χρήση είναι όταν περνάτε έναν πίνακα μεταξύ συναρτήσεων και έχετε μια συγκεκριμένη περίπτωση όταν δεν θέλετε να περάσετε παραμέτρους πίνακα. Έτσι, αντί να αντιστοιχίζετε μηδενικές τιμές σε παραμέτρους πίνακα, θα μπορούσατε απλά να περάσετε έναν κενό πίνακα απευθείας.
δωρεάν λογισμικό κατάργησης κακόβουλου λογισμικού
Το παρακάτω παράδειγμα δείχνει τη χρήση ενός κενού πίνακα.
import java.util.*; public class Main { public static String appendMessage(String msg, String() msg_params) { for ( int i = 0; i Παραγωγή:

Στο παραπάνω πρόγραμμα, μπορείτε να δείτε ότι υπάρχουν δύο κλήσεις για τη λειτουργία «appendMessage». Στην πρώτη κλήση, ένας πίνακας με ένα στοιχείο περνά. Στη δεύτερη κλήση, δεν χρειάζεται να περάσετε έναν πίνακα, αλλά καθώς το πρωτότυπο της συνάρτησης απαιτεί τη δεύτερη παράμετρο, μεταδίδεται ένας κενός πίνακας.
Συχνές Ερωτήσεις
Q # 1) Τι είναι το Primitive Array στην Java;
Απάντηση: Πίνακες με πρωτόγονα ή ενσωματωμένα δεδομένα Τύποι στοιχείων είναι πρωτόγονοι πίνακες. Ένας πίνακας μπορεί να δηλωθεί είτε με στοιχεία πρωτόγονου τύπου είτε τύπο αναφοράς.
Q # 2) Τι είναι το Byte Array στην Java;
Απάντηση: Ένας πίνακας που αποτελείται από στοιχεία τύπου byte είναι ο πίνακας byte. Ένα byte έχει μέγεθος 8 bit και συνήθως χρησιμοποιείται για την αναπαράσταση δυαδικών δεδομένων.
Q # 3) Τι είναι μια Boolean Array στην Java;
Απάντηση: Ένας πίνακας που αποθηκεύει μόνο τιμές τύπου Boolean, δηλαδή true ή false. Εάν δεν έχουν εκχωρηθεί ρητά τιμές, η προεπιλεγμένη τιμή του στοιχείου συστοιχίας Boolean είναι λανθασμένη.
Q # 4) Είναι ένα String a Char Array Java;
Απάντηση: Όχι. Η συμβολοσειρά είναι μια τάξη στην Java που περιέχει μια ακολουθία χαρακτήρων. Η συμβολοσειρά είναι αμετάβλητη, δηλαδή το περιεχόμενό της δεν μπορεί να αλλάξει μόλις οριστεί και έχει επίσης τις δικές της μεθόδους που λειτουργούν στα περιεχόμενά της.
Q # 5) Τι υποστηρίζει ο String ();
Απάντηση: Στην Java, τα ορίσματα γραμμής εντολών στο πρόγραμμα παρέχονται μέσω args που είναι μια σειρά από πίνακα. Μπορείτε απλώς να εκτελέσετε λειτουργίες σε αυτόν τον πίνακα όπως και κάθε άλλος πίνακας.
συμπέρασμα
Σε αυτό το σεμινάριο, μάθαμε ότι οι πίνακες που είναι συνεχόμενες ακολουθίες ομοιογενών στοιχείων μπορούν να καθοριστούν για διάφορους πρωτόγονους τύπους δεδομένων Java καθώς και για τύπους αναφοράς. Συζητήσαμε κυρίως τους πίνακες πρωτόγονων τύπων δεδομένων και τα παραδείγματα τους.
Θα συζητήσουμε τη σειρά αντικειμένων που είναι ένας τύπος αναφοράς σε ένα ξεχωριστό σεμινάριο.
=> Παρακολουθήστε εδώ την απλή εκπαίδευση Java.
Συνιστώμενη ανάγνωση
- Java Array - Πώς να εκτυπώσετε στοιχεία ενός πίνακα στην Java;
- Java Array - Δήλωση, δημιουργία και αρχικοποίηση μιας σειράς στην Java
- Java Copy Array: Πώς να αντιγράψετε / κλωνοποιήσετε μια σειρά στην Java
- Εκμάθηση μήκους σειράς Java με παραδείγματα κώδικα
- Κατάργηση / διαγραφή στοιχείου από μια σειρά στην Java
- Java Generic Array - Πώς να προσομοιώσετε γενικές συστοιχίες στην Java;
- Reverse An Array In Java - 3 μέθοδοι με παραδείγματα
- Πώς να προσθέσετε στοιχεία σε μια σειρά στην Java