java substring method tutorial with examples
Questo tutorial tratterà il metodo della sottostringa Java. Daremo uno sguardo alla sintassi, alla breve introduzione e agli esempi di sottostringa Java:
Tratteremo anche gli importanti esempi basati su scenari e le domande frequenti che ti aiuteranno a comprendere ancora meglio questo metodo.
Dopo aver seguito questo tutorial Java, sarai in grado di creare i tuoi programmi per estrarre qualsiasi sottostringa dalla stringa principale ed eseguire ulteriormente qualsiasi operazione su di essa.
=> Dai un'occhiata alla guida per principianti di Java qui.
Cosa imparerai:
Sottostringa Java ()
Come tutti sappiamo, la sottostringa Java non è altro che una parte della stringa principale.
Per esempio ,In una stringa 'Software Testing', 'Software' e 'Testing' sono le sottostringhe.
Questo metodo viene utilizzato per restituire o estrarre la sottostringa dalla stringa principale. Ora, per l'estrazione dalla stringa principale, dobbiamo specificare l'indice iniziale e l'indice finale nel metodo substring ().
Questo metodo ha due diverse forme. Di seguito viene fornita la sintassi di ciascuna di queste forme.
Sintassi:
String substring(int startingIndex); String substring(int startingIndex, int endingIndex);
Nella sezione successiva, esamineremo da vicino ciascuna di queste forme.
Indice iniziale
In questa sezione, discuteremo la prima forma del metodo Java substring (). La prima forma restituisce la sottostringa che inizia all'indice dato e quindi attraversa l'intera stringa. Quindi, qualunque cosa tu menzioni nell'indice iniziale, restituirà l'intera stringa da quel particolare indice.
Di seguito è riportato il programma in cui abbiamo dimostrato l'estrazione utilizzando la prima forma del metodo substring (). Abbiamo preso una stringa di input 'Software Testing Help' e quindi estratto la sottostringa dall'indice 9.
Pertanto, l'output sarà 'Testing Help'.
Nota: L'indice della stringa Java inizia sempre con 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)); } }
Produzione:
Indice iniziale e finale
In questa sezione parleremo della seconda forma del metodo. Qui, prenderemo una stringa di input 'metodo della sottostringa Java String' e proveremo a estrarre la sottostringa utilizzando la seconda forma che è specificando sia l'indice iniziale che quello finale.
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)); } }
Produzione:
cos'è lo stringstream in c ++
Esempi di sottostringhe Java
Scenario 1: Quale sarà l'output del metodo della sottostringa quando l'indice specificato non è presente nella stringa principale?
Spiegazione: In questo scenario, prenderemo una stringa di input 'Java Programming' e proveremo a specificare l'indice come 255 e 350 rispettivamente per gli indici iniziale e finale.
Come sappiamo, se la stringa non ha un numero di indice 255, deve generare un errore. In base alle regole predefinite di Java per l'eccezione, dovrebbe generare l'eccezione 'indice fuori intervallo'. Questo perché l'indice che abbiamo specificato nel metodo è fuori intervallo per la stringa data.
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)); } }
Produzione:
Scenario 2: Quale sarà l'output di questo metodo quando forniamo un valore di indice negativo?
Spiegazione: Qui, prenderemo una stringa di input 'Tutorial sottostringhe Java' e proveremo a fornire indici iniziali e finali negativi e controllare come risponde il programma.
Poiché l'indice Java String inizia da zero, non dovrebbe accettare numeri interi negativi nell'indice. Quindi il programma deve generare un'eccezione.
Il tipo di errore dovrebbe nuovamente essere l'eccezione 'Indice stringa fuori intervallo' perché l'indice specificato non è presente nella stringa principale.
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)); } }
Produzione:
Scenario 3: Quale sarà l'output della sottostringa quando forniamo (0,0) negli indici iniziale e finale?
domande e risposte del colloquio di test mobile
Spiegazione: Questo è ancora un altro ottimo scenario per comprendere il metodo Java String substring (). Qui, prenderemo una stringa di input 'Saket Saurav' e proveremo a recuperare la sottostringa a partire dall'indice zeroth e finendo sull'indice zeroth.
Sarà interessante vedere come risponderà il programma.
Poiché abbiamo gli stessi indici di inizio e di fine, dovrebbe restituire uno spazio vuoto. Tuttavia, il programma viene compilato correttamente in questo scenario.
Restituirà vuoto per tutti i valori in cui gli indici iniziale e finale sono gli stessi. Sia (0,0) o (1,1) o (2,2) e così via.
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)); } }
Produzione:
Domande frequenti
D # 1) Come dividere una stringa in sottostringhe in Java? Come creare di nuovo la stessa stringa dalle sottostringhe?
Risposta: Di seguito è riportato il programma in cui abbiamo preso una stringa di input e diviso la stringa in sottostringhe specificando gli indici di inizio e di fine.
Ancora una volta abbiamo creato la stessa stringa utilizzando le sottostringhe con l'aiuto dell'operatore di concatenazione di stringhe.
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 ); } }
Produzione:
Q # 2) Come scoprire se una stringa è una sottostringa di un'altra in Java?
Risposta: Di seguito è riportato il programma in cui abbiamo preso una stringa di input 'Esempio di sottostringa'. Quindi, abbiamo recuperato una sottostringa e memorizzata in una variabile String 'substr'. Successivamente, abbiamo utilizzato il metodo Java contains () per verificare se la stringa fa parte della stringa principale o meno.
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'); } } }
Produzione:
Q # 3) Qual è il tipo di ritorno del metodo substring () in Java?
Risposta: Come sappiamo, la classe String è immutabile e il metodo substring () è un metodo integrato della classe String. Ogni volta che si esegue un'operazione sulla String, la String successiva è una nuova String che viene restituita.
La stessa cosa accade anche con questo metodo. Ogni volta che chiamiamo il metodo substring (), la String risultante è una nuova String. Quindi, il tipo restituito di questo metodo in Java è una stringa.
Q # 4) String è thread-safe in Java?
Risposta: Sì. Proprio come StringBuffer, anche String è thread-safe in Java. Ciò significa che la stringa può essere utilizzata solo da un singolo thread in un determinato momento e non consente due thread che utilizzano una stringa contemporaneamente.
Q # 5) Qual è la differenza tra due diversi approcci per inizializzare una stringa?
Stringa str1 = 'ABC';
Stringa str2 = nuova stringa ('ABC');
Risposta: Entrambe le righe di codice ti daranno l'oggetto String. Ora possiamo elencare le differenze.
La prima riga di codice restituirà un oggetto esistente dal pool String mentre la seconda riga di codice in cui viene creata la String con l'aiuto di un operatore “new”, restituirà sempre un nuovo oggetto creato nella memoria heap.
Sebbene il valore 'ABC' sia 'uguale' in entrambe le righe, non è '=='.
Ora prendiamo il seguente programma.
Qui abbiamo inizializzato tre variabili String. Il primo confronto viene eseguito sulla base del confronto di riferimento '==' per str1 e str2 che restituisce true. Questo perché hanno utilizzato lo stesso oggetto esistente dal pool di stringhe.
Il secondo confronto è stato eseguito su str1 e str3 utilizzando '==' dove il confronto di riferimento è diverso perché l'oggetto String era una parte di str3 che viene creato di nuovo con l'aiuto di un operatore 'new'. Quindi, è tornato falso.
Il terzo confronto è stato effettuato con l'ausilio del metodo “.equals ()” che confrontava i valori contenuti in str1 e str3. Il valore di entrambe le variabili String è lo stesso, ovvero sono uguali. Quindi, è tornato vero.
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)); } }
Produzione:
Conclusione
In questo tutorial, abbiamo discusso le diverse forme del metodo substring (). Inoltre, abbiamo incluso più domande basate su scenari insieme alle domande frequenti che ti hanno aiutato a comprendere il metodo in dettaglio.
Ulteriore lettura = >> Funzione di sottostringa MySQL
Qui sono stati inclusi sintassi, esempi di programmazione e analisi dettagliate per ogni scenario e concetto. Questo ti aiuterà sicuramente a sviluppare i tuoi programmi del metodo substring () e ad eseguire diverse operazioni di manipolazione di String su ogni String successiva.
=> Leggere attraverso la serie di formazione Easy Java.
Lettura consigliata
- Tutorial Java String | Metodi Java String con esempi
- Java Reverse String: tutorial con esempi di programmazione
- Metodo Java String Split () - Come dividere una stringa in Java
- Java String compareTo con esempi di programmazione
- Tutorial sul metodo Java String contains () con esempi
- Metodo Java String length () con esempi
- Java String Array - Tutorial con esempi di codice
- Tutorial JAVA per principianti: oltre 100 tutorial video Java pratici