java string array tutorial with code examples
Αυτό το σεμινάριο για το Java String Array εξηγεί τον τρόπο δήλωσης, αρχικοποίησης και δημιουργίας συστοιχιών συμβολοσειράς σε Java και μετατροπών που μπορούμε να πραγματοποιήσουμε στο String Array:
Οι πίνακες είναι μια σημαντική δομή δεδομένων στην Java που χρησιμοποιούνται για την αποθήκευση διαφορετικών τύπων δεδομένων από πρωτόγονα έως καθορισμένα από το χρήστη. Έχουμε ήδη δει τα βασικά του Arrays και τις άλλες σημαντικές λειτουργίες που μπορούν να εκτελεστούν στο Arrays.
Σε ένα από τα προηγούμενα μαθήματά μας, έχουμε συζητήσει τους διάφορους τύπους δεδομένων που μπορεί να κρατήσει ένα Array.
=> A-Z Of Java Κατάρτιση για αρχάριους
Ένας από τους τύπους δεδομένων που μπορούν να κρατήσουν οι πίνακες είναι μια συμβολοσειρά. Σε αυτήν την περίπτωση, ο πίνακας ονομάζεται πίνακας String.
Τι θα μάθετε:
- Τι είναι μια σειρά χορδών στην Ιάβα;
- Δήλωση μιας σειράς συμβολοσειρών
- Αρχικοποίηση μιας σειράς συμβολοσειρών
- Μήκος / μέγεθος μιας σειράς συμβολοσειρών
- Επανάληψη και εκτύπωση σειράς συμβολοσειρών
- Προσθήκη στο The String Array
- Ταξινόμηση μιας σειράς συμβολοσειρών
- Αναζητήστε μια συμβολοσειρά στη σειρά συμβολοσειρών
- Μετατροπή σειράς συμβολοσειράς σε συμβολοσειρά
- Μετατροπή συμβολοσειράς σε σειρά συμβολοσειρών
- Μετατροπή σειράς συμβολοσειράς σε λίστα
- Μετατροπή λίστας στη σειρά συμβολοσειρών
- Μετατροπή σειράς συμβολοσειράς σε Int Array
- Συχνές Ερωτήσεις
- συμπέρασμα
Τι είναι μια σειρά χορδών στην Ιάβα;
Μπορούμε να έχουμε έναν πίνακα με συμβολοσειρές ως στοιχεία του. Έτσι, μπορούμε να ορίσουμε μια σειρά συμβολοσειρών ως πίνακα που έχει σταθερό αριθμό συμβολοσειρών ή τιμών συμβολοσειράς. Ο πίνακας συμβολοσειρών είναι μια δομή που χρησιμοποιείται πιο συχνά στην Java. Αν θυμάστε, ακόμη και το επιχείρημα της «κύριας» λειτουργίας στη Java είναι ένα String Array.
Ο πίνακας συμβολοσειρών είναι ένας πίνακας αντικειμένων. Αυτό συμβαίνει επειδή κάθε στοιχείο είναι μια συμβολοσειρά και γνωρίζετε ότι στην Java, το String είναι ένα αντικείμενο. Μπορείτε να κάνετε όλες τις λειτουργίες σε συστοιχίες συμβολοσειράς, όπως ταξινόμηση, προσθήκη ενός στοιχείου, σύνδεση, διαχωρισμός, αναζήτηση κ.λπ.
Σε αυτό το σεμινάριο, θα συζητήσουμε λεπτομερώς τον πίνακα συμβολοσειρών στην Java μαζί με τις διάφορες λειτουργίες και μετατροπές που μπορούμε να πραγματοποιήσουμε σε συστοιχίες συμβολοσειρών.
Δήλωση μιας σειράς συμβολοσειρών
Ένα String Array μπορεί να δηλωθεί με δύο τρόπους, δηλαδή με μέγεθος ή χωρίς να προσδιοριστεί το μέγεθος.
Παρακάτω δίνονται οι δύο τρόποι δήλωσης ενός String Array.
String() myarray ; //String array declaration without size
String() myarray = new String(5);//String array declaration with size
Στην πρώτη δήλωση, ένα String Array δηλώνεται σαν μια κανονική μεταβλητή χωρίς κανένα μέγεθος. Λάβετε υπόψη ότι πριν από τη χρήση αυτού του πίνακα, θα πρέπει να το δημιουργήσετε με νέο.
Στη δεύτερη δήλωση, ένα String Array δηλώνεται και τεκμηριώνεται χρησιμοποιώντας νέο. Εδώ, δηλώνεται ένας πίνακας String «myarray» με πέντε στοιχεία. Εάν εκτυπώσετε απευθείας τα στοιχεία αυτού του πίνακα, θα δείτε όλες τις μηδενικές τιμές καθώς ο πίνακας δεν έχει αρχικοποιηθεί.
Ας εφαρμόσουμε ένα πρόγραμμα που δείχνει μια δήλωση String Array.
public class Main { public static void main(String() args) { String() myarray; //declaration of string array without size String() strArray = new String(5); //declaration with size //System.out.println(myarray(0)); //variable myarray might not have been initialized //display elements of second array System.out.print(strArray(0) + ' ' +strArray(1)+ ' ' + strArray(2)+ ' ' + strArray(3)+ ' ' +strArray(4)); } }
Παραγωγή:
Το παραπάνω πρόγραμμα δείχνει δύο τρόπους για να δηλώσετε ένα String Array. Όπως αναφέρθηκε προηγουμένως, η πρώτη δήλωση είναι χωρίς μέγεθος και αποδεικτικό στοιχείο. Ως εκ τούτου, πριν χρησιμοποιήσετε αυτόν τον πίνακα, θα πρέπει να το δημιουργήσετε χρησιμοποιώντας νέο. Στο παραπάνω πρόγραμμα, ο πίνακας myarray χρησιμοποιείται χωρίς αποδείξεις και συνεπώς οδηγεί σε σφάλμα μεταγλωττιστή (σχόλιο δήλωση).
Η δεύτερη δήλωση είναι με το μέγεθος. Έτσι, όταν εκτυπώνονται μεμονωμένα στοιχεία αυτού του πίνακα συμβολοσειρών, οι τιμές όλων των στοιχείων είναι μηδενικές καθώς ο πίνακας δεν είχε αρχικοποιηθεί.
Αρχικοποίηση μιας σειράς συμβολοσειρών
Μόλις δηλωθεί το String Array, θα πρέπει να το αρχικοποιήσετε με κάποιες τιμές. Διαφορετικά, οι προεπιλεγμένες τιμές που εκχωρούνται στα στοιχεία συμβολοσειράς είναι μηδενικές. Έτσι, μετά τη δήλωση, προχωράμε στην αρχικοποίηση του πίνακα.
Ένας πίνακας συμβολοσειρών μπορεί να αρχικοποιηθεί είτε inline μαζί με τη δήλωση ή μπορεί να αρχικοποιηθεί μετά τη δήλωση.
Αρχικά, ας δούμε πώς μια σειρά συμβολοσειρών μπορεί να αρχικοποιηθεί inline.
String() numarray = {“one”, “two”, “three”}; String() strArray = new String() {“one”, “two”, “three”, “four”};
Στο παραπάνω String Array, οι αρχικοποιήσεις είναι inline αρχικοποιήσεις. Το String Array αρχικοποιείται την ίδια στιγμή που δηλώνεται.
Μπορείτε επίσης να αρχικοποιήσετε το String Array ως εξής:
String() strArray = new String(3); strArray(0) = “one”; strArray(1) = “two”; strArray(2) = “three”;
Εδώ το String Array δηλώνεται πρώτα. Στη συνέχεια, στην επόμενη γραμμή, στα μεμονωμένα στοιχεία εκχωρούνται τιμές. Μόλις το String Array αρχικοποιηθεί, μπορείτε να το χρησιμοποιήσετε κανονικά στο πρόγραμμά σας.
Μήκος / μέγεθος μιας σειράς συμβολοσειρών
Γνωρίζετε ότι για να αποκτήσετε το μέγεθος του πίνακα, οι πίνακες έχουν μια ιδιότητα που ονομάζεται «μήκος». Αυτό ισχύει και για το String Arrays.
Το μέγεθος ή το μήκος του πίνακα (οποιοσδήποτε πίνακας) δίνει τον αριθμό των στοιχείων που υπάρχουν στον πίνακα. Έτσι, για να αποκτήσετε το μήκος του πίνακα που ονομάζεται myarray, μπορείτε να δώσετε την ακόλουθη έκφραση.
int len = myarray.length;
Ας εφαρμόσουμε ένα πρόγραμμα που θα παράγει το μήκος μιας σειράς συμβολοσειρών.
public class Main { public static void main(String() args) { //declare and initialize a string array String() numArray = {'one','two', 'three', 'four', 'five'}; int len = numArray.length; //get the length of array //display the length System.out.println('Length of numArray{'one','two', 'three', 'four', 'five'}:' + len); } }
Παραγωγή:
Η ιδιότητα μήκους είναι χρήσιμη όταν πρέπει να κάνετε επανάληψη μέσω πίνακα συμβολοσειρών για να την επεξεργαστείτε ή απλά να την εκτυπώσετε.
Επανάληψη και εκτύπωση σειράς συμβολοσειρών
Μέχρι στιγμής, έχουμε συζητήσει την ιδιότητα δήλωσης, αρχικοποίησης και μήκους ενός String Array και τώρα ήρθε η ώρα να διασχίσουμε κάθε στοιχείο του πίνακα και επίσης να εκτυπώσουμε τα στοιχεία του String Array.
Όπως συμβαίνει με όλες τις συστοιχίες, μπορείτε να κάνετε επανάληψη σε μια σειρά συμβολοσειρών χρησιμοποιώντας βρόχο και βελτιωμένη για βρόχο.
Δίνεται παρακάτω είναι ένα Εφαρμογή Java που δείχνει τη χρήση ενός βελτιωμένου για βρόχο για να διασχίσει / επαναλάβει τον πίνακα και να εκτυπώσει τα στοιχεία του.
public class Main { public static void main(String() args) { //declare and initialize a string array String() numArray = {'one','two', 'three', 'four', 'five'}; System.out.println('String Array elements displayed using for loop:'); // for loop to iterate over the string array for(int i=0; i Παραγωγή:

Στο παραπάνω πρόγραμμα, τόσο για βρόχο όσο και για βελτιωμένο για βρόχο χρησιμοποιούνται για να διασχίσουν τη σειρά συμβολοσειρών. Σημειώστε ότι στην περίπτωση βελτιωμένου βρόχου, δεν απαιτείται να καθορίσετε το όριο ή την τελική συνθήκη. Στην περίπτωση του βρόχου «για», πρέπει να καθορίσετε την κατάσταση έναρξης και λήξης.
Προσθήκη στο The String Array
Όπως και οι άλλοι τύποι δεδομένων, μπορείτε επίσης να προσθέσετε στοιχεία για String Arrays. Σε αυτήν την ενότητα, ας δούμε τις διάφορες μεθόδους για να προσθέσετε ένα στοιχείο στον πίνακα συμβολοσειρών.
Χρήση προ-κατανομής
Σε αυτήν τη μέθοδο, δημιουργείτε έναν πίνακα με μεγαλύτερο μέγεθος. Για παράδειγμα, εάν πρέπει να αποθηκεύσετε 5 στοιχεία στον πίνακα, τότε θα δημιουργήσετε έναν πίνακα με μέγεθος 10. Με αυτόν τον τρόπο μπορείτε εύκολα να προσθέσετε νέα στοιχεία στο τέλος του πίνακα.
Ένα παράδειγμα που εφαρμόζει την προσθήκη ενός στοιχείου στον προ-εκχωρημένο πίνακα φαίνεται παρακάτω.
import java.util.*; public class Main { public static void main(String() args) { String() colorsArray = new String(5); // initial array values colorsArray(0) = 'Red'; colorsArray(1) = 'Green'; colorsArray(2) = 'Blue'; System.out.println('Original Array:' + Arrays.toString(colorsArray)); intnumberOfItems = 3; // try to add new value at the end of the array String newItem = 'Yellow'; colorsArray(numberOfItems++) = newItem; System.out.println('Array after adding one element:' + Arrays.toString(colorsArray)); } }
Παραγωγή:

Σημειώστε ότι ο μη καταγεγραμμένος χώρος στον πίνακα έχει οριστεί σε Null. Το μειονέκτημα αυτής της μεθόδου είναι ότι υπάρχει σπατάλη χώρου καθώς μπορεί να δημιουργήσετε μια μεγάλη συστοιχία που μπορεί να παραμείνει άδειος.
Χρησιμοποιώντας μια νέα σειρά
Σε αυτήν τη μέθοδο, δημιουργείτε έναν νέο πίνακα που έχει μέγεθος μεγαλύτερο από τον αρχικό πίνακα, ώστε να μπορείτε να προσαρμόσετε το νέο στοιχείο. Μετά τη δημιουργία του νέου πίνακα, όλα τα στοιχεία του αρχικού πίνακα αντιγράφονται σε αυτόν τον πίνακα και στη συνέχεια το νέο στοιχείο προστίθεται στο τέλος του πίνακα.
Ένα παράδειγμα προγράμματος για την προσθήκη ενός στοιχείου χρησιμοποιώντας τον νέο πίνακα φαίνεται παρακάτω.
δωρεάν προγράμματα λήψης βίντεο για τα Windows 10
importjava.util.*; public class Main { public static void main(String() args) { //original array String() colorsArray = {'Red', 'Green', 'Blue' }; System.out.println('Original Array: ' + Arrays.toString(colorsArray)); //length of original array int orig_length = colorsArray.length; //new element to be added to string array String newElement = 'Orange'; //define new array with length more than the original array String() newArray = new String( orig_length + 1 ); //add all elements of original array to new array for (int i=0; i Παραγωγή:

Αυτή η προσέγγιση οδηγεί σαφώς στη μνήμη και την απόδοση γενικά καθώς πρέπει να διατηρήσετε δύο πίνακες στο πρόγραμμα.
Χρησιμοποιώντας το ArrayList
Μπορείτε επίσης να προσθέσετε ένα στοιχείο στον πίνακα συμβολοσειρών χρησιμοποιώντας το ArrayList ως ενδιάμεση δομή δεδομένων.
Ένα παράδειγμα φαίνεται παρακάτω.
import java.io.*; import java.lang.*; import java.util.*; class Main { public static void main(String() args) { // define initial array String numArray() = { 'one', 'two', 'three', 'four', 'five', 'six' }; // print the original array System.out.println('Initial Array:
' + Arrays.toString(numArray)); // new element to be added String newElement = 'seven'; // convert the array to arrayList ListnumList = new ArrayList( Arrays.asList(numArray)); // Add the new element to the arrayList numList.add(newElement); // Convert the Arraylist back to array numArray = numList.toArray(numArray); // print the changed array System.out.println('
Array with value ' + newElement + ' added:
' + Arrays.toString(numArray)); } }
Παραγωγή:

Όπως φαίνεται στο παραπάνω πρόγραμμα, ο πίνακας συμβολοσειρών μετατρέπεται αρχικά σε ArrayList χρησιμοποιώντας τη μέθοδο asList. Στη συνέχεια, το νέο στοιχείο προστίθεται στο ArrayList χρησιμοποιώντας τη μέθοδο προσθήκης. Μόλις προστεθεί το στοιχείο, το ArrayList μετατρέπεται πίσω στον πίνακα.
Αυτή είναι μια πιο αποτελεσματική προσέγγιση σε σύγκριση με αυτές που συζητήθηκαν προηγουμένως.
Το String Array περιέχει
Σε περίπτωση που θέλετε να μάθετε εάν υπάρχει μια συγκεκριμένη συμβολοσειρά στη συστοιχία συμβολοσειρών ή όχι, μπορείτε να χρησιμοποιήσετε τη μέθοδο «περιέχει». Για αυτό, πρέπει πρώτα να μετατρέψετε τον πίνακα συμβολοσειρών σε ArrayList, καθώς αυτή η μέθοδος ανήκει στο ArrayList.
Η ακόλουθη εφαρμογή δείχνει τη χρήση της μεθόδου «περιέχει».
import java.io.*; import java.lang.*; import java.util.*; class Main { public static void main(String() args) { String() words = new String(){'C++', 'Java', 'C', 'Python'}; // Convert String Array to List Listwordslist = Arrays.asList(words); String tochk = 'Java'; if(wordslist.contains(tochk)){ System.out.println('The word ' + tochk + ' present in string array'); } else System.out.println('The word ' + tochk + ' not present in string array' ); } }
Παραγωγή:

Αρχικά, ελέγξαμε εάν ο δεδομένος πίνακας συμβολοσειρών περιέχει τη συμβολοσειρά «Java». Καθώς είναι παρόν, εμφανίζεται ένα κατάλληλο μήνυμα. Στη συνέχεια, αλλάζουμε τη συμβολοσειρά που θα ελεγχθεί σε «C #». Σε αυτήν την περίπτωση, η μέθοδος 'περιέχει' επιστρέφει ψευδής.

Σημειώστε ότι, για τη μέθοδο περιέχει, η συμβολοσειρά που παρέχεται ως όρισμα είναι πάντα ευαίσθητη σε πεζά. Έτσι, στην παραπάνω εφαρμογή, εάν παρέχουμε το 'java' ως επιχείρημα για να περιέχει τη μέθοδο, τότε θα επιστρέψει ψευδές.
Ταξινόμηση μιας σειράς συμβολοσειρών
Έχουμε ήδη δει ένα λεπτομερές θέμα σχετικά με την «Ταξινόμηση σε πίνακες». Οι μέθοδοι για την ταξινόμηση ενός πίνακα συμβολοσειρών είναι οι ίδιες όπως οι άλλες συστοιχίες.
Παρακάτω δίνεται μια εφαρμογή της μεθόδου «ταξινόμησης» της κατηγορίας «Πίνακες» που ταξινομεί τις χορδές στον πίνακα με αλφαβητική σειρά.
import java.util.*; class Main { public static void main(String() args) { String() colors = {'red','green','blue','white','orange'}; System.out.println('Original array: '+Arrays.toString(colors)); Arrays.sort(colors); System.out.println('Sorted array: '+Arrays.toString(colors)); } }
Παραγωγή:

Η έξοδος του παραπάνω προγράμματος δείχνει τον αρχικό πίνακα εισαγωγής καθώς και τον πίνακα εξόδου που έχει ταξινομηθεί αλφαβητικά.
Αναζητήστε μια συμβολοσειρά στη σειρά συμβολοσειρών
Εκτός από τη μέθοδο «περιέχει» που μόλις συζητήσαμε, μπορείτε επίσης να αναζητήσετε μια συγκεκριμένη συμβολοσειρά σε μια σειρά συμβολοσειράς διασχίζοντας κάθε στοιχείο της σειράς συμβολοσειρών. Εδώ, θα συγκρίνετε κάθε στοιχείο στο String Array με το string που θα αναζητήσετε.
Η αναζήτηση τερματίζεται όταν βρεθεί η πρώτη εμφάνιση της συμβολοσειράς και επιστρέφεται ο αντίστοιχος δείκτης της συμβολοσειράς στη συστοιχία. Εάν η συμβολοσειρά δεν βρεθεί μέχρι το τέλος του πίνακα συμβολοσειρών, τότε εμφανίζεται ένα κατάλληλο μήνυμα.
Αυτή η εφαρμογή εμφανίζεται στο ακόλουθο πρόγραμμα Java.
import java.util.*; class Main { public static void main(String() args) { String() strArray = { 'Book', 'Pencil', 'Eraser', 'Color', 'Pen' }; boolean found = false; int index = 0; String searchStr = 'Pen'; for (int i = 0; i Παραγωγή:

Το παραπάνω πρόγραμμα αναζητά τη συμβολοσειρά «Πένα» σε μια δεδομένη συστοιχία συμβολοσειρών και επιστρέφει το αντίστοιχο ευρετήριό της όταν βρεθεί.
Μετατροπή σειράς συμβολοσειράς σε συμβολοσειρά
Ας συζητήσουμε τους τρόπους μετατροπής του πίνακα συμβολοσειρών σε συμβολοσειρά. Θα συζητήσουμε τρεις διαφορετικές μεθόδους για να το κάνουμε αυτό με ένα παράδειγμα καθεμιάς.
Χρήση της μεθόδου toString
Η πρώτη μέθοδος είναι η μέθοδος «toString» της τάξης «Arrays». Παίρνει τον πίνακα συμβολοσειρών ως όρισμα και επιστρέφει την παράσταση συμβολοσειρών του πίνακα.
Το ακόλουθο πρόγραμμα Java δείχνει τη χρήση της μεθόδου toString.
import java.util.*; public class Main { public static void main(String args()) { //declare a string String() str_Array = {'This','is','Software','Testing','Help'}; System.out.println('String array converted to string:' + Arrays.toString(str_Array)); } }
Παραγωγή:

Το παραπάνω πρόγραμμα χρησιμοποιεί τη μέθοδο «toString» για να εμφανίσει την αναπαράσταση συμβολοσειρών του δεδομένου πίνακα συμβολοσειρών.
Χρήση της μεθόδου StringBuilder.Append ()
Η επόμενη προσέγγιση της μετατροπής του πίνακα συμβολοσειρών σε συμβολοσειρά είναι χρησιμοποιώντας την κλάση «StringBuilder». Θα πρέπει να δημιουργήσετε ένα αντικείμενο τύπου StringBuilder και να χρησιμοποιήσετε τη μέθοδο 'Append' του StringBuilder για να προσαρτήσετε τα στοιχεία πίνακα συμβολοσειρών στο αντικείμενο StringBuilder ένα προς ένα.
Μόλις όλα τα στοιχεία πίνακα προσαρτηθούν στο αντικείμενο StringBuilder, μπορείτε να χρησιμοποιήσετε τη μέθοδο «toString» σε αυτό το αντικείμενο για να λάβετε επιτέλους την αναπαράσταση συμβολοσειρών.
import java.util.*; public class Main { public static void main(String args()) { //string array String() str_Array = {'This','is','Software','Testing','Help'}; System.out.print('Original string array:'); //print string array for(String val:str_Array) System.out.print(val + ' '); System.out.println('
'); //construct a stringbuilder object from given string array StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i Παραγωγή:

Το παραπάνω πρόγραμμα δείχνει τη μετατροπή του πίνακα συμβολοσειρών σε συμβολοσειρά χρησιμοποιώντας την κλάση StringBuilder.
Χρήση λειτουργίας εγγραφής
Μπορείτε επίσης να χρησιμοποιήσετε τη λειτουργία «join» της κλάσης String για να αλλάξετε τον πίνακα συμβολοσειρών σε παράσταση συμβολοσειράς.
Η λειτουργία «join» περιλαμβάνει δύο ορίσματα, το πρώτο είναι το διαχωριστικό ή οριοθέτης για τη συμβολοσειρά και το δεύτερο όρισμα είναι ο πίνακας συμβολοσειρών. Στη συνέχεια, η λειτουργία σύνδεσης επιστρέφει τη συμβολοσειρά που διαχωρίζεται από ένα καθορισμένο διαχωριστικό (πρώτο όρισμα).
Ελέγξτε το ακόλουθο πρόγραμμα που καταδεικνύει τη χρήση της λειτουργίας σύνδεσης για να αποκτήσετε μια συμβολοσειρά από ένα String Array.
import java.util.*; public class Main { public static void main(String args()) { //string array String() str_Array = {'This','is','Software','Testing','Help'}; System.out.println('Original string array:'); //print the string array for(String val:str_Array) System.out.print(val + ' '); System.out.println('
'); //form a string from string array using join operation String joinedString = String.join(' ', str_Array); //print the string System.out.println('String obtained from string array:' + joinedString); } }
Παραγωγή:

Μετατροπή συμβολοσειράς σε σειρά συμβολοσειρών
Ας δούμε την αντίστροφη λειτουργία της μετατροπής μιας συμβολοσειράς σε μια σειρά συμβολοσειρών. Υπάρχουν δύο μέθοδοι για να γίνει αυτή η μετατροπή.
Χρησιμοποιώντας τη λειτουργία Split
Η πρώτη μέθοδος μετατροπής μιας συμβολοσειράς σε σειρά συμβολοσειρών είναι να χρησιμοποιήσετε τη λειτουργία διαίρεσης της κλάσης String. Μπορείτε να χωρίσετε τη συμβολοσειρά σε ένα καθορισμένο οριοθέτη (κόμμα, κενό, κ.λπ.) και να επιστρέψετε τον πίνακα συμβολοσειρών που δημιουργήθηκε πρόσφατα.
Η ακόλουθη εφαρμογή δείχνει τη χρήση της λειτουργίας split.
public class Main { public static void main(String args()) { //declare a string String myStr = 'This is Software Testing Help'; //use split function to split the string into a string array String() str_Array = myStr.split(' ', 5); System.out.println('String Array after splitting the string '' + myStr + '':'); //display the string array for (int i=0;i Παραγωγή:

Το παραπάνω πρόγραμμα χρησιμοποιεί τη συνάρτηση split για να διαιρέσει τη συμβολοσειρά με βάση το διάστημα και επιστρέφει μια σειρά συμβολοσειρών 5 στοιχείων.
Χρησιμοποιώντας το μοτίβο Regex
Η επόμενη μέθοδος για τη μετατροπή της συμβολοσειράς σε μια σειρά συμβολοσειρών είναι με τη χρήση κανονικών εκφράσεων. Μπορείτε να καθορίσετε ένα μοτίβο και στη συνέχεια να χωρίσετε τη δεδομένη συμβολοσειρά σύμφωνα με το καθορισμένο μοτίβο.
Μπορείς να χρησιμοποιήσεις Κατηγορία μοτίβου Regex ανήκει στο πακέτο java.util.
Δίνεται παρακάτω ένα παράδειγμα χρήσης μοτίβων για τη μετατροπή συμβολοσειράς σε String Array.
import java.util.Arrays; import java.util.regex.Pattern; public class Main { public static void main(String args()) { //declare a string String myStr = 'This is Java series tutorial'; System.out.println('The original string:' + myStr + '
'); String() str_Array = null; //split string on space(' ') Pattern pattern = Pattern.compile(' '); //use pattern split on string to get string array str_Array = pattern.split(myStr ); //print the string array System.out.println('String Array after splitting the string using regex pattern:'); for (int i=0;i Παραγωγή:
c ++ ερωτήσεις και απαντήσεις συνέντευξης

Στο παραπάνω πρόγραμμα, το μοτίβο που έχουμε καθορίσει είναι ένας χαρακτήρας διαστήματος. Έτσι, η συμβολοσειρά χωρίζεται σε κενά και επιστρέφει τον πίνακα συμβολοσειρών. Όπως μπορείτε ήδη να συμπεράνετε, η χρήση κανονικών εκφράσεων και μοτίβων είναι ένας πολύ πιο αποτελεσματικός τρόπος προγραμματισμού.
Μετατροπή σειράς συμβολοσειράς σε λίστα
Μπορείτε επίσης να μετατρέψετε έναν πίνακα συμβολοσειρών σε μια λίστα. Έχουμε απαριθμήσει μερικές μεθόδους για να γίνει αυτό
Χρήση προσαρμοσμένου κώδικα
Η πρώτη μέθοδος είναι να χρησιμοποιήσετε προσαρμοσμένο κώδικα για να μετατρέψετε τη σειρά συμβολοσειρών σε λίστα. Σε αυτήν τη μέθοδο, ένας πίνακας συμβολοσειρών διασχίζεται και κάθε στοιχείο προστίθεται στη λίστα χρησιμοποιώντας τη μέθοδο προσθήκης της λίστας.
Το παρακάτω πρόγραμμα δείχνει αυτήν την εφαρμογή.
import java.util.*; public class Main { public static void main( String() args ) { //a string array String() numArray = { 'One', 'Two', 'Three', 'Four', 'Five' }; System.out.println('The string array:' + Arrays.toString(numArray)); //define arraylist with size same as string array Liststr_ArrayList = new ArrayList(numArray.length); //add string array elements to arraylist for (String str:numArray) { str_ArrayList.add(str ); } System.out.println('
Arraylist created from string array:'); //print the arraylist for (String str : str_ArrayList) { System.out.print(str + ' ' ); } } }
Παραγωγή:

Όπως φαίνεται στο παραπάνω πρόγραμμα, δημιουργείται πρώτα μια λίστα. Στη συνέχεια, χρησιμοποιώντας το βρόχο για κάθε βρόχο, κάθε στοιχείο του πίνακα συμβολοσειρών προστίθεται στη λίστα. Τέλος, η λίστα εκτυπώνεται.
Χρήση της μεθόδου Collections.addAll ()
Η δεύτερη μέθοδος μετατροπής πίνακα συμβολοσειρών σε λίστα είναι χρησιμοποιώντας τη μέθοδο «addAll» του πλαισίου Συλλογές. Η μέθοδος addAll () παίρνει τον πίνακα ArrayList και string ως είσοδο και αντιγράφει τα περιεχόμενα του πίνακα συμβολοσειρών στο ArrayList.
Το ακόλουθο πρόγραμμα δείχνει τη χρήση της μεθόδου addAll για τη μετατροπή του πίνακα συμβολοσειρών σε λίστα.
import java.util.*; public class Main { public static void main( String() args ) { //a string array String() vehiclesArray = { 'moped', 'car', 'SUV', 'bicycle', 'bus' }; System.out.println('The string array:' + Arrays.toString(vehiclesArray)); //define arraylist with size same as string array List str_ArrayList = new ArrayList(vehiclesArray.length); //add string array elements to arraylist using Collections.addAll method Collections.addAll(str_ArrayList, vehiclesArray ); System.out.println('
Arraylist created from string array:'); //print the arraylist for (String str : str_ArrayList) { System.out.print(str + ' ' ); } } }
Παραγωγή:

Στο παραπάνω πρόγραμμα, έχουμε μετατρέψει έναν δεδομένο πίνακα συμβολοσειρών σε μια λίστα χρησιμοποιώντας τη μέθοδο Collections.addAll.
Χρήση του Arrays.asList ()
Τέλος, η τάξη Array παρέχει τη μέθοδο «asList ()» που μετατρέπει απευθείας τη δεδομένη σειρά συμβολοσειρών στη λίστα.
πώς να ανοίξετε αρχεία .jar με java
Παρακάτω δίνεται ένα πρόγραμμα Java που χρησιμοποιεί τη λίστα.
import java.util.*; public class Main { public static void main( String() args ) { //a string array String() vehiclesArray = { 'moped', 'car', 'SUV', 'bicycle', 'bus' }; System.out.println('The string array:' + Arrays.toString(vehiclesArray)); //Convert array to list using asList method List str_ArrayList = Arrays.asList(vehiclesArray ); System.out.println('
Arraylist created from string array:'); //print the arraylist for (String str : str_ArrayList) { System.out.print(str + ' ' ); } } }
Παραγωγή:

Όπως φαίνεται παραπάνω, η μέθοδος asList της κατηγορίας Arrays μετατρέπει τον πίνακα σε λίστα και επιστρέφει αυτήν τη λίστα.
Μετατροπή λίστας στη σειρά συμβολοσειρών
Στην προηγούμενη ενότητα, είδαμε μερικές μεθόδους για τη μετατροπή του πίνακα συμβολοσειρών σε λίστα. Τώρα, ας δούμε τις μεθόδους μετατροπής της λίστας σε πίνακα συμβολοσειρών.
Χρήση του ArraList.get ()
Η πρώτη μέθοδος είναι η μέθοδος get ArrayList που επιστρέφει τα μεμονωμένα στοιχεία της λίστας. Μπορείτε να διασχίσετε τη μέθοδο ArrayList και κλήση λήψης που θα επιστρέψει ένα στοιχείο που μπορεί στη συνέχεια να αντιστοιχιστεί στη θέση του πίνακα.
Το παρακάτω πρόγραμμα δείχνει αυτήν την εφαρμογή.
import java.util.*; public class Main { public static void main( String() args ) { //ArrayList initialization ArrayList str_ArrayList= new ArrayList(); //add items to the arraylist str_ArrayList.add('str1'); str_ArrayList.add('str2'); str_ArrayList.add('str3'); str_ArrayList.add('str4'); str_ArrayList.add('str5'); //ArrayList to Array Conversion String str_Array() = new String(str_ArrayList.size()); for(int j =0;j Παραγωγή:

Το παραπάνω πρόγραμμα δείχνει τη μετατροπή του ArrayList σε πίνακα συμβολοσειρών χρησιμοποιώντας τη μέθοδο get.
Χρήση της μεθόδου ArrayList.toArray ()
Το ArrayList παρέχει μια μέθοδο «toArray ()» που επιστρέφει μια παράσταση συστοιχίας του ArrayList. Έτσι, μπορείτε να αποκτήσετε έναν πίνακα συμβολοσειρών από μια συμβολοσειρά ArrayList χρησιμοποιώντας αυτήν τη μέθοδο.
Ελέγξτε το ακόλουθο πρόγραμμα που χρησιμοποιεί τη μέθοδο toArray.
import java.util.*; public class Main { public static void main( String() args ) { //ArrayList initialization ArrayList str_ArrayList= new ArrayList(); //add items to the arraylist str_ArrayList.add('Mumbai'); str_ArrayList.add('Delhi'); str_ArrayList.add('Pune'); str_ArrayList.add('Chennai'); str_ArrayList.add('Kolkata'); //ArrayList to Array Conversion using toArray method String str_Array()=str_ArrayList.toArray(new String(str_ArrayList.size())); //print array elements System.out.println('String array obtained from string arraylist:'); for(String ary: str_Array){ System.out.print(ary + ' '); } } }
Παραγωγή:

Πρώτα, τα στοιχεία προστίθενται στο ArrayList και στη συνέχεια χρησιμοποιώντας τη μέθοδο «toArray», η λίστα μετατρέπεται σε πίνακα συμβολοσειρών.
Μετατροπή σειράς συμβολοσειράς σε Int Array
Μερικές φορές μπορεί να χρειαστεί να κάνετε χειρισμούς σε αριθμούς. Σε αυτήν την περίπτωση, εάν ο πίνακας συμβολοσειράς σας έχει αριθμητικά περιεχόμενα, συνιστάται να μετατρέψετε αυτόν τον πίνακα συμβολοσειρών σε πίνακα int. Για αυτό, πρέπει να χρησιμοποιήσετε τη συνάρτηση «parseInt» σε κάθε στοιχείο πίνακα και να εξαγάγετε τον ακέραιο.
Το ακόλουθο πρόγραμμα δείχνει τη μετατροπή του πίνακα συμβολοσειρών σε έναν πίνακα int.
import java.util.*; public class Main { public static void main( String() args ) { //string arrya declaration String () str_Array = {'10', '20','30', '40','50'}; //print the string array System.out.println('Original String Array:'); for(String val:str_Array) System.out.print(val + ' '); System.out.println('
The integer array obtained from string array:'); //declare an int array int () int_Array = new int (str_Array.length); //assign string array values to int array for(int i=0; i Παραγωγή:

Στο παραπάνω πρόγραμμα, έχουμε έναν πίνακα συμβολοσειρών που περιέχει τους αριθμούς ως συμβολοσειρές. Σε αυτό το πρόγραμμα, κάθε ένα από τα στοιχεία πίνακα συμβολοσειράς αναλύεται χρησιμοποιώντας τη συνάρτηση «parseInt» και αντιστοιχίζεται σε έναν πίνακα τύπου int.
Σημειώστε ότι αυτή η μετατροπή θα λειτουργεί μόνο σε έναν πίνακα συμβολοσειρών με αριθμητικά στοιχεία. Εάν κάποιο από τα στοιχεία του πίνακα συμβολοσειρών δεν είναι αριθμητικό, τότε ο μεταγλωττιστής ρίχνει το «java.lang.NumberFormatException».
Συχνές Ερωτήσεις
Q # 1) Ποια είναι η διαφορά μεταξύ ενός Array και ενός String στην Java;
Απάντηση: Ο πίνακας είναι μια συνεχόμενη ακολουθία στοιχείων. Η συμβολοσειρά είναι μια ακολουθία χαρακτήρων που τερματίζεται από μηδενικό χαρακτήρα. Οι συμβολοσειρές είναι αμετάβλητες, δηλαδή όταν οριστούν, δεν μπορούν να αλλάξουν. Οποιεσδήποτε αλλαγές έγιναν στα αποτελέσματα συμβολοσειράς σε μια νέα συμβολοσειρά.
Οι πίνακες είναι μεταβλητές. Οι πίνακες μπορούν να περιέχουν στοιχεία διαφόρων τύπων δεδομένων, συμπεριλαμβανομένων των συμβολοσειρών.
Ε # 2) Πώς δηλώνετε έναν πίνακα στην Java;
Απάντηση: Ο γενικός τρόπος για να δηλώσετε έναν πίνακα σε Java είναι:
πληκτρολογήστε array_name ();
Ή
πληκτρολογήστε () array_name;
Επομένως, εάν το myarray είναι μια μεταβλητή πίνακα με στοιχεία int τύπου, τότε αυτός ο πίνακας μπορεί να δηλωθεί ως:
int myarray ();
Ή
int () myarray;
Q # 3) Πώς μπορώ να δημιουργήσω ένα Array of Strings;
Απάντηση: Εάν το strArray είναι ένας πίνακας συμβολοσειρών, τότε η δήλωσή του μπορεί να είναι:
Συμβολοσειρά () strArray;
Ή
String strArray ();
Q # 4) Τι υποστηρίζει ο String ();
Απάντηση: String () args in Java είναι ένας πίνακας συμβολοσειρών που περιέχουν ορίσματα γραμμής εντολών που μπορούν να μεταβιβαστούν σε ένα πρόγραμμα Java.
Ε # 5) Μπορούν οι συστοιχίες να κρατούν χορδές;
Απάντηση: Ναί. Ακριβώς όπως οι πίνακες μπορούν να κρατήσουν άλλους τύπους δεδομένων όπως char, int, float, οι πίνακες μπορούν επίσης να κρατούν χορδές. Σε αυτήν την περίπτωση, ο πίνακας γίνεται ένας πίνακας «πίνακα χαρακτήρων» καθώς η συμβολοσειρά μπορεί να θεωρηθεί ως ακολουθία ή πίνακας χαρακτήρων.
συμπέρασμα
Σε αυτό το σεμινάριο, έχουμε δει τις λεπτομέρειες του String Array στην Java. Εξετάσαμε όλες τις βασικές έννοιες που σχετίζονται με το String Array, συμπεριλαμβανομένης της δήλωσης, του ορισμού και της αρχικοποίησης του πίνακα συμβολοσειρών στην Java.
Έχουμε επίσης συζητήσει αρκετές λειτουργίες όπως αναζήτηση, ταξινόμηση, συμμετοχή κ.λπ. και μετατροπή συστοιχίας συμβολοσειρών σε λίστα, συμβολοσειρά, ενδιάμεσος πίνακας κ.λπ.
Στα επόμενα σεμινάριά μας, θα συζητήσουμε πολυδιάστατους πίνακες στην Java.
=> Μάθετε Java από το μηδέν εδώ
Συνιστώμενη ανάγνωση
- Εκμάθηση μήκους σειράς Java με παραδείγματα κώδικα
- Java String με String Buffer και String Builder Tutorial
- Εκπαιδευτικό πρόγραμμα JAVA για αρχάριους: 100+ πρακτικά εκπαιδευτικά βίντεο Java
- Πώς να ταξινομήσετε μια σειρά σε Java - Tutorial με παραδείγματα
- Reverse An Array In Java - 3 μέθοδοι με παραδείγματα
- C # String Tutorial - Μέθοδοι συμβολοσειράς με παραδείγματα κώδικα
- String Array C ++: Υλοποίηση & αναπαράσταση με παραδείγματα
- Java «αυτό» Λέξη-κλειδί: Εκμάθηση με παραδείγματα κώδικα