java substring method tutorial with examples
Ce didacticiel couvrira la méthode de sous-chaîne Java. Nous examinerons la syntaxe, une brève introduction et des exemples de sous-chaînes Java:
Nous couvrirons également les exemples importants basés sur des scénarios ainsi que les questions fréquemment posées qui vous aideront à mieux comprendre cette méthode.
Après avoir parcouru ce didacticiel Java, vous serez en mesure de créer vos propres programmes pour extraire n'importe quelle sous-chaîne de la chaîne principale et d'effectuer toute opération dessus.
=> Jetez un œil au guide du débutant Java ici.
Ce que vous apprendrez:
Sous-chaîne Java ()
Comme nous le savons tous, la sous-chaîne Java n'est rien d'autre qu'une partie de la chaîne principale.
Par exemple ,Dans une chaîne 'Software Testing', le 'Software' et 'Testing' sont les sous-chaînes.
Cette méthode est utilisée pour renvoyer ou extraire la sous-chaîne de la chaîne principale. Maintenant, pour l'extraction de la chaîne principale, nous devons spécifier l'index de départ et l'index de fin dans la méthode substring ().
Cette méthode a deux formes différentes. La syntaxe de chacune de ces formes est donnée ci-dessous.
Syntaxe:
String substring(int startingIndex); String substring(int startingIndex, int endingIndex);
Dans la section suivante, nous examinerons de près chacune de ces formes.
Index de départ
Dans cette section, nous aborderons la première forme de la méthode Java substring (). Le premier formulaire retourne la sous-chaîne qui commence à l'index donné, puis traverse toute la chaîne. Ainsi, quoi que vous mentionniez dans l'index de départ, il renverra la chaîne entière de cet index particulier.
Vous trouverez ci-dessous le programme dans lequel nous avons démontré l'extraction en utilisant la première forme de méthode substring (). Nous avons pris une chaîne d'entrée «Software Testing Help», puis extrait la sous-chaîne de l'index 9.
Ainsi, la sortie sera «Aide de test».
Remarque: L'index Java String commence toujours par zéro.
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)); } }
Production:
Index de début et de fin
Dans cette section, nous parlerons de la deuxième forme de la méthode. Ici, nous allons prendre une chaîne d'entrée «méthode de sous-chaîne de chaîne Java» et nous allons essayer d'extraire la sous-chaîne en utilisant la deuxième forme qui consiste à spécifier à la fois les indices de début et de fin.
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)); } }
Production:
comment installer appium sur windows
Exemples de sous-chaînes Java
Scénario 1: Quelle sera la sortie de la méthode de sous-chaîne lorsque l'index spécifié n'est pas présent dans la chaîne principale?
Explication: Dans ce scénario, nous allons prendre une chaîne d'entrée «Programmation Java» et nous allons essayer de spécifier l'index comme 255 et 350 pour les index de début et de fin respectivement.
Comme nous le savons, si la chaîne n'a pas de numéro d'index 255, elle doit générer une erreur. Par les règles prédéfinies de Java pour l'exception, il doit lever l'exception «index hors plage». En effet, l'index que nous avons spécifié dans la méthode est hors de portée pour la chaîne donnée.
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)); } }
Production:
Scénario 2: Quelle sera la sortie de cette méthode lorsque nous fournissons une valeur d'index négative?
Explication: Ici, nous allons prendre une chaîne d'entrée «Tutoriels de sous-chaîne Java» et nous allons essayer de fournir des index de début et de fin négatifs et vérifier comment le programme répond.
Comme l'index Java String commence à zéro, il ne doit pas accepter les entiers négatifs dans l'index. Le programme doit donc lever une exception.
Le type d'erreur doit à nouveau être l'exception «Index de chaîne hors limites» car l'index spécifié n'est pas présent dans la chaîne 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)); } }
Production:
Scénario 3: Quelle sera la sortie de la sous-chaîne lorsque nous fournissons (0,0) dans les index de début et de fin?
Explication: C'est encore un autre très bon scénario pour comprendre la méthode Java String substring (). Ici, nous allons prendre une chaîne d'entrée «Saket Saurav» et essayer de récupérer la sous-chaîne en commençant par l'index zéro et en se terminant par l'index zéro.
Il sera intéressant de voir comment le programme réagit.
Comme nous avons les index de début et de fin identiques, il devrait renvoyer un blanc. Toutefois, le programme se compile correctement dans ce scénario.
Il renverra vide pour toutes ces valeurs où les index de début et de fin sont les mêmes. Que ce soit (0,0) ou (1,1) ou (2,2) et ainsi de suite.
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)); } }
Production:
Questions fréquemment posées
Q # 1) Comment diviser une chaîne en sous-chaînes en Java? Comment créer à nouveau la même chaîne à partir des sous-chaînes?
Répondre: Vous trouverez ci-dessous le programme dans lequel nous avons pris une chaîne d'entrée et divisé la chaîne en sous-chaînes en spécifiant les index de début et de fin.
Encore une fois, nous avons créé la même chaîne en utilisant les sous-chaînes à l'aide de l'opérateur String concat.
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 ); } }
Production:
Q # 2) Comment savoir si une chaîne est une sous-chaîne d'une autre en Java?
Répondre: Voici le programme où nous avons pris une chaîne d'entrée «Exemple de sous-chaîne». Ensuite, nous avons récupéré une sous-chaîne et stockée dans une variable String «substr». Par la suite, nous avons utilisé la méthode Java contains () pour vérifier si la chaîne fait partie de la chaîne principale ou non.
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'); } } }
Production:
Q # 3) Quel est le type de retour de la méthode substring () en Java?
Répondre: Comme nous le savons, la classe String est Immutable et la méthode substring () est une méthode intégrée de la classe String. Chaque fois que vous effectuez une opération sur la chaîne, la chaîne suivante est une nouvelle chaîne renvoyée.
La même chose se produit avec cette méthode. Chaque fois que nous appelons la méthode substring (), la String résultante est une nouvelle String. Par conséquent, le type de retour de cette méthode en Java est une chaîne.
analyse des causes profondes dans les tests logiciels
Q # 4) Est-ce que String est thread-safe en Java?
Répondre: Oui. Tout comme StringBuffer, le String est également thread-safe en Java. Cela signifie que la chaîne ne peut être utilisée que par un seul thread à un moment donné et qu'elle n'autorise pas deux threads utilisant une chaîne simultanément.
Q # 5) Quelle est la différence entre deux approches différentes pour l'initialisation d'une chaîne?
Chaîne str1 = 'ABC';
Chaîne str2 = nouvelle chaîne («ABC»);
Répondre: Les deux lignes de codes vous donneront l'objet String. Nous pouvons maintenant énumérer les différences.
La première ligne de code renverra un objet existant du pool de chaînes tandis que la deuxième ligne de code où la chaîne est créée à l'aide d'un «nouvel» opérateur, renverra toujours un nouvel objet qui est créé dans la mémoire du tas.
Bien que la valeur «ABC» soit «égale» dans les deux lignes, ce n'est pas «==».
Prenons maintenant le programme suivant.
Ici, nous avons initialisé trois variables String. La première comparaison est effectuée sur la base de la comparaison de référence «==» pour str1 et str2 qui renvoie true. En effet, ils ont utilisé le même objet existant du pool de chaînes.
La deuxième comparaison a été effectuée sur str1 et str3 en utilisant «==» où la comparaison de référence diffère parce que l'objet String faisait partie de str3 qui est créé nouvellement à l'aide d'un opérateur «new». Par conséquent, il est retourné faux.
La troisième comparaison a été faite à l'aide de la méthode «.equals ()» qui comparait les valeurs contenues par str1 et str3. La valeur des deux variables String est la même, c'est-à-dire qu'elles sont égales. Par conséquent, il est retourné vrai.
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)); } }
Production:
Conclusion
Dans ce tutoriel, nous avons discuté des différentes formes de la méthode substring (). En outre, nous avons inclus plusieurs questions basées sur des scénarios ainsi que les questions fréquemment posées qui vous ont aidé à comprendre la méthode en détail.
Lectures complémentaires = >> Fonction de sous-chaîne MySQL
La syntaxe, des exemples de programmation et une analyse détaillée de chaque scénario et concept ont été inclus ici. Cela vous aidera sûrement à développer vos propres programmes de la méthode substring () et à effectuer différentes opérations de manipulation de String sur chaque String suivant.
=> Lisez la série de formations Easy Java.
lecture recommandée
- Tutoriel Java String | Méthodes de chaîne Java avec exemples
- Java Reverse String: Tutoriel avec des exemples de programmation
- Méthode Java String Split () - Comment diviser une chaîne en Java
- Méthode Java String compareTo avec des exemples de programmation
- Tutoriel sur la méthode Java String contains () avec des exemples
- Méthode Java String length () avec exemples
- Tableau de chaînes Java - Tutoriel avec des exemples de code
- Tutoriel JAVA pour les débutants: plus de 100 tutoriels vidéo Java pratiques