java substring method tutorial with examples
Denna handledning kommer att täcka Java-substringsmetoden. Vi tar en titt på exempel på syntax, kort introduktion och Java:
Vi kommer också att täcka de viktiga scenariobaserade exemplen och de vanliga frågorna som hjälper dig att förstå denna metod ännu bättre.
När du har gått igenom denna Java-handledning kommer du att kunna skapa dina egna program för att extrahera alla understrängar från huvudsträngen och vidare utföra alla operationer på den.
=> Ta en titt på Java-nybörjarguiden här.
Vad du kommer att lära dig:
Java-substring ()
Som vi alla vet är Java-substring inget annat än en del av huvudsträngen.
Till exempel ,I en sträng 'Programvarutestning' är 'Programvara' och 'Testning' underlag.
Denna metod används för att returnera eller extrahera strängen från huvudsträngen. För extraktion från huvudsträngen måste vi nu ange startindex och slutindex i metoden substring ().
Denna metod har två olika former. Syntaxen för var och en av dessa former ges nedan.
Syntax:
String substring(int startingIndex); String substring(int startingIndex, int endingIndex);
I nästa avsnitt kommer vi att undersöka var och en av dessa former.
Startindex
I det här avsnittet kommer vi att diskutera den första formen av metoden Java substring (). Den första formen returnerar understrängen som börjar vid det angivna indexet och löper sedan genom hela strängen. Så vad du än nämner i startindexet kommer det att returnera hela strängen från det aktuella indexet.
Nedan följer programmet där vi har demonstrerat extraktionen med den första formen av substring () -metoden. Vi har tagit en ingångssträng “Software Testing Help” och extraherat sedan substringen från index 9.
Således kommer utmatningen att vara “Testing Help”.
Notera: Java-strängindex börjar alltid med noll.
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)); } }
Produktion:
Start- och slutindex
I detta avsnitt kommer vi att prata om den andra formen av metoden. Här ska vi ta en ingångssträng 'Java String substring method' och vi kommer att försöka extrahera substringen med hjälp av den andra formen som är genom att specificera både start- och slutindex.
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)); } }
Produktion:
ai programvara för pc gratis nedladdning
Exempel på Java-substring
Scenario 1: Vad blir resultatet av substringsmetoden när det angivna indexet inte finns i huvudsträngen?
Förklaring: I det här scenariot kommer vi att ta en ingångssträng 'Java-programmering' och vi kommer att försöka specificera indexet som 255 respektive 350 för start- och slutindex.
Som vi vet, om strängen inte har ett 255-indexnummer, måste det kasta ett fel. Enligt de Java-fördefinierade reglerna för undantaget bör det kasta undantaget 'index utanför intervallet'. Detta beror på att indexet vi har angett i metoden ligger utanför intervallet för den angivna strängen.
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)); } }
Produktion:
Scenario 2: Vad blir resultatet av denna metod när vi anger ett negativt indexvärde?
Förklaring: Här ska vi ta en ingångssträng 'Java substring Tutorials' och vi kommer att försöka tillhandahålla negativa start- och slutindex och kontrollera hur programmet reagerar.
Eftersom Java String-index börjar från noll bör det inte acceptera negativa heltal i indexet. Så programmet måste kasta ett undantag.
Feltypen bör återigen vara undantaget 'Strängindex utanför intervall' eftersom det angivna indexet inte finns i huvudsträngen.
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)); } }
Produktion:
Scenario 3: Vad blir substringens output när vi anger (0,0) i start- och slutindexen?
Förklaring: Detta är ännu ett mycket bra scenario för att förstå Java-metoden String substring (). Här tar vi en inmatningssträng 'Saket Saurav' och försöker hämta substringen från nollindex och slutar på nollindex.
Det blir intressant att se hur programmet reagerar.
Eftersom vi har start- och slutindex som samma, ska det returnera ett tomt. Programmet sammanställs dock framgångsrikt i detta scenario.
Det återgår tomt för alla sådana värden där start- och slutindexen är desamma. Var det (0,0) eller (1,1) eller (2,2) och så vidare.
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)); } }
Produktion:
Vanliga frågor
F # 1) Hur delar jag en sträng i strängar i Java? Hur skapar jag samma sträng igen från substraten?
Svar: Nedan följer programmet där vi har tagit en ingångssträng och delat strängen i strängar genom att ange start- och slutindex.
Återigen har vi skapat samma sträng genom att använda understrängarna med hjälp av String concat operator.
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 ); } }
Produktion:
F # 2) Hur hittar man om en sträng är en delsträng av en annan i Java?
Svar: Nedan följer programmet där vi har tagit en ingångssträng 'Exempel på substring'. Sedan har vi hämtat en substring och lagrat i en strängvariabel 'substr'. Därefter har vi använt metoden Java innehåller () för att kontrollera om strängen är en del av huvudsträngen eller inte.
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'); } } }
Produktion:
F # 3) Vad är returtypen för substring () -metoden i Java?
Svar: Som vi vet är strängklassen oföränderlig och substring () -metoden är en inbyggd metod i strängklassen. Varje gång du utför en operation på strängen är den efterföljande strängen en ny sträng som returneras.
Samma sak händer också med den här metoden. Varje gång vi kallar substring () -metoden är den resulterande strängen en ny sträng. Därför är returtypen för denna metod i Java en sträng.
F # 4) Är trådsträngsäker i Java?
Svar: Ja. Precis som StringBuffer är strängen också trådsäker i Java. Detta innebär att strängen endast kan användas av en enda tråd vid en viss tidpunkt och det tillåter inte två trådar som använder en sträng samtidigt.
F # 5) Vad är skillnaden mellan två olika metoder för att initiera en sträng?
Sträng str1 = “ABC”;
Sträng str2 = ny sträng (“ABC”);
Svar: Båda kodraderna ger dig String-objektet. Nu kan vi lista ut skillnaderna.
Den första kodraden returnerar ett befintligt objekt från strängpoolen medan den andra kodraden där strängen skapas med hjälp av en 'ny' operatör, alltid returnerar ett nytt objekt som skapas i högminnet.
Även om värdet 'ABC' är 'lika' i båda raderna är det inte '=='.
Låt oss nu ta följande program.
Här har vi initierat tre strängvariabler. Den första jämförelsen görs på basis av ”==” referensjämförelse för str1 och str2 som returnerar true. Detta beror på att de har använt samma befintliga objekt från strängpoolen.
Den andra jämförelsen gjordes på str1 och str3 med '==' där referensjämförelsen skiljer sig åt eftersom strängobjektet var som en del av str3 som skapades nyligen med hjälp av en 'ny' operatör. Därför returnerade det falskt.
Den tredje jämförelsen gjordes med hjälp av metoden “.equals ()” som jämförde värdena i str1 och str3. Värdet på båda strängvariablerna är detsamma, dvs. de är lika. Därför blev det sant.
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)); } }
Produktion:
hur man kör jar-fil i Windows
Slutsats
I denna handledning har vi diskuterat de olika formerna av substring () -metoden. Vi har också inkluderat flera scenariobaserade frågor tillsammans med de vanliga frågorna som hjälpte dig att förstå metoden i detalj.
Ytterligare läsning = >> MySQL Substring-funktion
Syntax, programmeringsexempel och detaljerad analys för varje scenario och koncept inkluderades här. Detta kommer säkert att hjälpa dig att utveckla dina egna program för substring () -metoden och utföra olika strängmanipulationsåtgärder vid varje efterföljande sträng.
=> Läs igenom Easy Java Training Series.
Rekommenderad läsning
- Java String Tutorial | Java-strängmetoder med exempel
- Java Reverse String: Handledning med programmeringsexempel
- Java String Split () Metod - Hur man delar upp en sträng i Java
- Java-sträng jämför med metod med programmeringsexempel
- Java String innehåller () Metodhandledning med exempel
- Java Stränglängd () Metod med exempel
- Java String Array - Handledning med kodexempel
- JAVA-handledning för nybörjare: 100+ praktiska Java-videohandledning