java substring method tutorial with examples
Този урок ще обхване метода на подниза Java. Ще разгледаме примерите за синтаксис, кратко въведение и поднизове на Java:
Също така ще разгледаме важните примери, базирани на сценарии, както и често задаваните въпроси, които ще ви помогнат да разберете този метод още по-добре.
След като преминете през този урок за Java, ще можете да създадете свои собствени програми за извличане на който и да е подниз от основния String и да извършите по-нататъшни действия върху него.
=> Погледнете тук ръководството за начинаещи Java.
Какво ще научите:
Подниз Java ()
Както всички знаем, поднизът Java не е нищо друго освен част от основния низ.
Например ,В низ „Тестване на софтуер“, „Софтуер“ и „Тестване“ са поднизовете.
Този метод се използва за връщане или извличане на подниза от основния низ. Сега, за извличането от основния String, трябва да посочим началния индекс и завършващия индекс в метода substring ().
Този метод има две различни форми. Синтаксисът на всяка от тези форми е даден по-долу.
Синтаксис:
String substring(int startingIndex); String substring(int startingIndex, int endingIndex);
В следващия раздел ще разгледаме внимателно всяка от тези форми.
Начален индекс
В този раздел ще обсъдим първата форма на метода на Java substring (). Първата форма връща подниза, който започва от дадения индекс и след това преминава през целия низ. Така че, каквото и да споменете в началния индекс, той ще върне целия низ от този конкретен индекс.
По-долу е дадена програмата, в която демонстрирахме извличането с помощта на първата форма на метод substring (). Взехме входящ низ „Помощ за тестване на софтуер“ и след това извлечихме подниза от индекс 9.
По този начин резултатът ще бъде „Помощ за тестване“.
Забележка: Индексът на Java String винаги започва с нула.
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)); } }
Изход:
Начален и краен индекс
В този раздел ще говорим за втората форма на метода. Тук ще вземем входния низ „Метод на низа на низа на Java“ и ще се опитаме да извлечем подниза, като използваме втората форма, която е като посочим както началния, така и крайния индекс.
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)); } }
Изход:
алтернатива на ccleaner за windows 10
Примери за поднизове на Java
Сценарий 1: Какъв ще бъде изходът на метода на подниза, когато посоченият индекс не присъства в основния низ?
Обяснение: В този сценарий ще вземем входен низ „Програмиране на Java“ и ще се опитаме да посочим индекса съответно 255 и 350 за началния и крайния индекс.
Както знаем, ако низът няма 255 индексно число, тогава трябва да изведе грешка. Съгласно предварително зададените правила за изключението на Java, то трябва да изхвърли изключение „индекс извън обхвата“. Това е така, защото индексът, който сме посочили в метода, е извън обхвата за дадения низ.
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)); } }
Изход:
Сценарий 2: Какъв ще бъде резултатът от този метод, когато предоставим отрицателна стойност на индекса?
Обяснение: Тук ще вземем входен низ „Уроци за поднизови Java“ и ще се опитаме да предоставим отрицателни начални и крайни индекси и да проверим как реагира програмата.
Тъй като индексът Java String започва от нула, той не трябва да приема отрицателни цели числа в индекса. Така че програмата трябва да хвърли изключение.
Типът грешка отново трябва да бъде изключението „Индекс на низа извън обхвата“, тъй като посоченият индекс не присъства в основния низ.
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)); } }
Изход:
Сценарий 3: Какъв ще бъде изходът на подниза, когато предоставим (0,0) в началния и крайния индекс?
Обяснение: Това е още един много добър сценарий за разбиране на метода String substring () Java. Тук ще вземем входен низ „Saket Saurav“ и ще се опитаме да извлечем подниза, започвайки от нулевия индекс и завършвайки на нулевия индекс.
Ще бъде интересно да видим как ще отговори програмата.
Тъй като имаме еднакъв начален и краен индекс, той трябва да върне празно. Програмата обаче се компилира успешно при този сценарий.
Ще се върне празно за всички такива стойности, където началният и крайният индекси са еднакви. Било то (0,0) или (1,1) или (2,2) и т.н.
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)); } }
Изход:
често задавани въпроси
В # 1) Как да разделя низ в поднизове в Java? Как да създам същия низ отново от поднизовете?
Отговор: По-долу е програмата, в която взехме входен низ и разделихме низа на поднизове, като посочихме началния и крайния индекс.
Отново създадохме същия String, като използвахме поднизовете с помощта на 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 ); } }
Изход:
Q # 2) Как да разбера дали String е подниз на друг в Java?
Отговор: По-долу е програмата, в която сме взели входен низ „Пример за подниза“. След това взехме подстринг и го съхранихме в променлива String “substr”. След това използвахме метода Java contains (), за да проверим дали String е част от основния String или не.
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'); } } }
Изход:
очила за виртуална реалност за xbox 360
Q # 3) Какъв е методът на връщане на substring () в Java?
Отговор: Както знаем, класът String е неизменим, а методът substring () е вграден метод на класа String. Всеки път, когато извършвате операция върху низа, следващият низ е нов низ, който се връща.
Същото се случва и с този метод. Всеки път, когато извикаме метода substring (), полученият String е нов String. Следователно типът на връщане на този метод в Java е низ.
Q # 4) Дали String е безопасен за нишки в Java?
Отговор: Да. Подобно на StringBuffer, String също е безопасен за нишки в Java. Това означава, че String може да се използва само от една нишка в даден момент от времето и не позволява две нишки да използват String едновременно.
Q # 5) Каква е разликата между два различни подхода за инициализиране на низ?
String str1 = “ABC”;
String str2 = нов String (“ABC”);
Отговор: И двата реда кодове ще ви дадат обекта String. Сега можем да изброим разликите.
Първият ред код ще върне съществуващ обект от низа String, докато вторият ред код, където String се създава с помощта на „нов“ оператор, винаги ще връща нов обект, който е създаден в паметта на купчината.
Въпреки че стойността „ABC“ е „равна“ и в двата реда, тя не е „==“.
Сега нека вземем следната програма.
Тук сме инициализирали три променливи String. Първото сравнение се извършва на базата на „==” сравнение на референции за str1 и str2, което връща true. Това е така, защото те са използвали същия съществуващ обект от String pool.
Второто сравнение беше направено на str1 и str3, използвайки “==”, където референтното сравнение се различава, тъй като обектът String беше като част от str3, която е създадена ново с помощта на “нов” оператор. Следователно връща фалшиво.
Третото сравнение беше направено с помощта на метода “.equals ()”, който сравняваше стойностите, съдържащи се от str1 и str3. Стойността на двете променливи String е еднаква, т.е.те са равни. Следователно се върна истина.
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)); } }
Изход:
Заключение
В този урок обсъдихме различните форми на метода substring (). Също така включихме множество въпроси, базирани на сценарии, заедно с често задаваните въпроси, които ви помогнаха да разберете подробно метода.
Допълнително четене = >> Функция за поднизове на MySQL
Тук бяха включени синтаксис, примери за програмиране и подробен анализ за всеки сценарий и концепция. Това със сигурност ще ви помогне при разработването на собствени програми на метод substring () и извършване на различни операции за манипулиране на String на всеки следващ String.
=> Прочетете серията Easy Training Training.
Препоръчително четене
- Java урок за низове | Низови методи на Java с примери
- Java Reverse String: Урок с примери за програмиране
- Метод за разделяне на низове в Java () - Как да разделя низ в Java
- Java String compareTo метод с примери за програмиране
- Java String съдържа () Урок за метод с примери
- Дължина на низа на Java () Метод с примери
- Java String Array - Урок с примери за кодове
- Урок за JAVA за начинаещи: 100+ практически ръководства за Java видео