java substring method tutorial with examples
Acest tutorial va acoperi metoda substring Java. Vom arunca o privire la sintaxă, scurtă introducere și exemple de sub șir Java:
De asemenea, vom acoperi exemplele importante bazate pe scenarii, precum și întrebările frecvente care vă vor ajuta să înțelegeți și mai bine această metodă.
La parcurgerea acestui tutorial Java, veți fi în măsură să vă creați propriile programe pentru extragerea oricărui șir din șirul principal și să efectuați în continuare orice operație pe acesta.
=> Consultați aici Ghidul pentru începători Java.
Ce veți învăța:
Substring Java ()
După cum știm cu toții, șirul Java nu este altceva decât o parte a șirului principal.
De exemplu ,Într-un șir „Testare software”, „Software” și „Testare” sunt șirurile secundare.
Această metodă este utilizată pentru a returna sau extrage șirul din șirul principal. Acum, pentru extragerea din șirul principal, trebuie să specificăm indexul de început și indexul de finalizare în metoda substring ().
Această metodă are două forme diferite. Sintaxa fiecăreia dintre aceste forme este dată mai jos.
Sintaxă:
String substring(int startingIndex); String substring(int startingIndex, int endingIndex);
În secțiunea următoare, vom analiza cu atenție fiecare dintre aceste forme.
Index de pornire
În această secțiune, vom discuta despre prima formă a metodei Java substring (). Prima formă returnează șirul care începe la indexul dat și apoi rulează prin întregul Șir. Deci, orice ai menționa în indexul de pornire, acesta va returna întregul șir din acel index particular.
Dat mai jos este programul în care am demonstrat extracția utilizând prima formă a metodei substring (). Am preluat un șir de intrare „Ajutor pentru testarea software-ului” și apoi am extras șirul din indexul 9.
Astfel, ieșirea va fi „Ajutor de testare”.
Notă: Indicele Java String începe întotdeauna cu zero.
public class substring { public static void main(String() args) { String str = 'Software testing help'; /* * It will start from 9th index and extract * the substring till the last index */ System.out.println('The original String is: ' +str); System.out.println('The substring is: ' +str.substring(9)); } }
Ieșire:
Index de începere și sfârșit
În această secțiune, vom vorbi despre a doua formă a metodei. Aici, vom lua un șir de intrare „Java String substring method” și vom încerca să extragem șirul folosind cea de-a doua formă care este specificând atât indicii de început, cât și cei de sfârșit.
public class substring { public static void main(String() args) { String str = 'Java String substring method'; /* * It will start from 12th index and extract * the substring till the 21st index */ System.out.println('The original String is: ' +str); System.out.println('The substring is: ' +str.substring(12,21)); } }
Ieșire:
cel mai bun client ssh pentru Windows 10
Exemple de substring Java
Scenariul 1: Care va fi ieșirea metodei subșirului atunci când indexul specificat nu este prezent în șirul principal?
Explicaţie: În acest scenariu, vom lua un șir de intrare „Programare Java” și vom încerca să specificăm indexul ca 255 și respectiv 350 pentru indexurile de început și de sfârșit.
După cum știm, dacă șirul nu are un număr de index 255, atunci trebuie să arunce o eroare. Conform regulilor predefinite Java pentru excepție, ar trebui să arunce excepția „index în afara intervalului”. Acest lucru se datorează faptului că indexul pe care l-am specificat în metodă este în afara intervalului pentru șirul dat.
public class substring { public static void main(String() args) { String str = 'Java Programming'; /* * It will throw an error after printing the original String. * The index we have specified is out of range for the * main String. Hence, it will throw 'String index of range' * exception */ System.out.println('The original String is: ' +str); System.out.println('The substring is: ' +str.substring(255,350)); } }
Ieșire:
Scenariul 2: Care va fi rezultatul acestei metode atunci când vom furniza o valoare index negativă?
Explicaţie: Aici vom lua un șir de intrare „Tutoriale Java pentru șiruri de caractere Java” și vom încerca să oferim indici negativi de început și de sfârșit și să verificăm cum răspunde programul.
Deoarece indicele Java String începe de la zero, nu ar trebui să accepte numere întregi negative în index. Deci programul trebuie să arunce o excepție.
Tipul de eroare ar trebui să fie din nou excepția „Indicele șirului în afara intervalului”, deoarece indicele specificat nu este prezent în șirul principal.
public class substring { public static void main(String() args) { String str = 'Java substring Tutorials'; /* * It will throw an error after printing the original String. * The index we have specified is out of range for the * main String because the String index starts from zero. * It does not accept any negative index value. * Hence, it will throw 'String index of range' exception */ System.out.println('The original String is: ' +str); System.out.println('The substring is: ' +str.substring(-5,-10)); } }
Ieșire:
Scenariul 3: Care va fi ieșirea subcordului atunci când furnizăm (0,0) în indexurile de început și de sfârșit?
Explicaţie: Acesta este încă un alt scenariu foarte bun pentru a înțelege metoda Java String substring (). Aici, vom lua un șir de intrare „Saket Saurav” și vom încerca să preluăm șirul începând de la indexul zero și terminând pe indexul zero.
Va fi interesant să vedem cum răspunde programul.
Deoarece avem indici de început și de sfârșit la fel, ar trebui să returneze un gol. Cu toate acestea, programul se compilează cu succes în acest scenariu.
Se va întoarce necompletat pentru toate aceste valori, unde indicii de început și de sfârșit sunt aceiași. Fie (0,0) sau (1,1) sau (2,2) și așa mai departe.
public class substring { public static void main(String() args) { String str = 'Saket Saurav'; /* * The output will be blank because of the starting and ending * indexes can not be the same. In such scenarios, the * program will return a blank value. The same is applicable * when you are giving the input index as (0,0) or (1,1) or (2,2). * and so on. */ System.out.println('The original String is: ' +str); System.out.println('The substring is: ' +str.substring(0,0)); } }
Ieșire:
întrebări frecvente
Q # 1) Cum se împarte un șir în șiruri de caractere în Java? Cum să creați același șir din nou din șiruri de caractere?
Răspuns: Mai jos este programul în care am luat un șir de intrare și am împărțit șirul în șiruri specificând indicii de început și de sfârșit.
Din nou, am creat același șir folosind șirurile de caractere cu ajutorul operatorului concat String.
public class substring { public static void main(String() args) { String str = 'Saket Saurav'; // created two substrings substr1 and substr2 String substr1 = str.substring(0,6); String substr2 = str.substring(6,12); //Printed main String as initialized System.out.println(str); //Printed substr1 System.out.println(substr1); //Printed substr2 System.out.println(substr2); //Printed main String from two substrings System.out.println(substr1 +substr2 ); } }
Ieșire:
Q # 2) Cum se găsește dacă un șir este un șir al altui în Java?
Răspuns: Mai jos este programul în care am preluat un șir de intrare „Exemplu al șirului de caractere”. Apoi, am preluat un șir și am stocat într-o variabilă de șir „substr”. Ulterior, am folosit metoda Java contains () pentru a verifica dacă șirul face parte sau nu din șirul principal.
public class substring { public static void main(String() args) { String str = 'Example of the substring'; // created a substring substr String substr = str.substring(8,10); //Printed substring System.out.println(substr); /* * used .contains() method to check the substring (substr) is a * part of the main String (str) or not */ if(str.contains(substr)) { System.out.println('String is a part of the main String'); } else { System.out.println('String is not a part of the main String'); } } }
Ieșire:
Q # 3) Care este tipul de returnare a metodei substring () în Java?
Răspuns: După cum știm, clasa String este imuabilă, iar metoda substring () este o metodă încorporată a clasei String. De fiecare dată când efectuați o operație pe șir, șirul următor este un șir nou care este returnat.
Același lucru se întâmplă și cu această metodă. De fiecare dată când apelăm metoda substring (), șirul rezultat este un șir nou. Prin urmare, tipul de returnare al acestei metode în Java este un șir.
Q # 4) String-ul este sigur în Java?
convertor gratuit online de la youtube la mp4
Răspuns: Da. La fel ca StringBuffer, șirul este, de asemenea, sigur în fire în Java. Acest lucru înseamnă că șirul poate fi utilizat doar de un singur fir într-un moment dat și nu permite două fire utilizând simultan un șir.
Q # 5) Care este diferența dintre două abordări diferite pentru inițializarea unui șir?
String str1 = „ABC”;
String str2 = new String („ABC”);
Răspuns: Ambele linii de coduri vă vor oferi obiectul String. Acum putem enumera diferențele.
Prima linie de cod va returna un obiect existent din grupul de șiruri, în timp ce a doua linie de cod în care șirul este creat cu ajutorul unui „nou” operator, va returna întotdeauna un obiect nou care este creat în memoria heap.
Deși valoarea „ABC” este „egală” în ambele linii, nu este „==”.
Acum să luăm următorul program.
Aici am inițializat trei variabile String. Prima comparație se face pe baza comparației de referință „==” pentru str1 și str2 care returnează adevărat. Acest lucru se datorează faptului că au folosit același obiect existent din piscina String.
A doua comparație a fost făcută pe str1 și str3 folosind „==” unde comparația de referință diferă deoarece obiectul String a fost ca o parte a str3 care este creată recent cu ajutorul unui „nou” operator. Prin urmare, a revenit fals.
A treia comparație a fost făcută cu ajutorul metodei „.equals ()” care a comparat valorile conținute de str1 și str3. Valoarea ambelor variabile String este aceeași, adică sunt egale. Prin urmare, a revenit adevărat.
public class substring { public static void main(String() args) { String str1 = 'ABC'; String str2 = 'ABC'; /* * True because '==' works on the reference comparison and * str1 and str2 have used the same existing object from * the String pool */ System.out.println(str1 == str2); String str3 = new String ('ABC'); /* * False because str1 and str3 have not the same reference * type */ System.out.println(str1==str3); /* * True because '.equals' works on comparing the value contained * by the str1 and str3. */ System.out.println(str1.equals(str3)); } }
Ieșire:
Concluzie
În acest tutorial, am discutat diferitele forme ale metodei substring (). De asemenea, am inclus mai multe întrebări bazate pe scenarii împreună cu întrebările frecvente care v-au ajutat să înțelegeți detaliat metoda.
Lecturi suplimentare = >> Funcția MySQL Substring
Sintaxa, exemplele de programare și analiza detaliată pentru fiecare scenariu și concept au fost incluse aici. Acest lucru vă va ajuta cu siguranță în dezvoltarea propriilor programe de metodă substring () și în efectuarea diferitelor operații de manipulare a șirurilor pe fiecare șir următor.
=> Citiți seria Easy Training Java.
Lectură recomandată
- Tutorial Java String | Metode Java String cu exemple
- Java Reverse String: Tutorial cu exemple de programare
- Metoda Java String Split () - Cum se împarte un șir în Java
- Java String compare Metoda cu exemple de programare
- Șirul Java conține () Tutorial metodă cu exemple
- Java String length () Metodă cu exemple
- Java String Array - Tutorial cu exemple de cod
- Tutorial JAVA pentru începători: peste 100 de cursuri video Java practice