Підрядок в Java
У Java підрядок є частиною рядка або, можна сказати, підмножиною рядка. Є два варіанти методу substring(). У цій статті описано всі з них, а саме:
- public String substring(int startIndex) public String substring(int startIndex, int endIndex)
Підрядок Java
1. Рядок substring()
Метод substring() має два варіанти і повертається новий рядок що є підрядком цього рядка. Підрядок починається із символу за вказаним індексом і продовжується до кінця цього рядка. Кінцевий індекс підрядка починається з 1, а не з 0.
Синтаксис
public String substring (int begIndex );
Параметри
- begIndex: початковий індекс включно.
Повернене значення
- Зазначений підрядок.
Приклад методу String substring().
Java
// Java code to demonstrate the> // working of substring(int begIndex)> public> class> Substr1 {> > public> static> void> main(String args[])> > {> > // Initializing String> > String Str => new> String(> 'Welcome to geeksforgeeks'> );> > // using substring() to extract substring> > // returns (whiteSpace)geeksforgeeks> > System.out.print(> 'The extracted substring is : '> );> > System.out.println(Str.substring(> 10> ));> > }> }> |
Вихід
The extracted substring is : geeksforgeeks
2. Підрядок рядка (початковий індекс, кінцевий індекс)
Цей метод має два варіанти і повертається a новий рядок що є підрядком цього рядка. Підрядок починається із символу за вказаним індексом і поширюється до кінця цього рядка або вгору до кінцяІндекс – 1 якщо задано другий аргумент.
Синтаксис
public String substring (int begIndex , int endIndex );
Параметри
- beginIndex : початковий індекс включно. endIndex : кінцевий індекс, ексклюзивний.
Повернене значення
- Зазначений підрядок.
приклад
Java
// Java code to demonstrate the> // working of substring(int begIndex, int endIndex)> // Driver Class> public> class> Substr2 {> > // main function> > public> static> void> main(String args[])> > {> > // Initializing String> > String Str => new> String(> 'Welcome to geeksforgeeks'> );> > // using substring() to extract substring> > // returns geeks> > System.out.print(> 'The extracted substring is : '> );> > System.out.println(Str.substring(> 10> ,> 16> ));> > }> }> |
Вихід
The extracted substring is : geeks
Складність описаного вище способу
Часова складність: O(n), де n - довжина вихідного рядка. Метод substring() потребує постійного часу O(1), щоб повернути підрядок.
Космічна складність: O(1), оскільки для виконання операції підрядка не потрібен додатковий простір.
Можливе застосування
Вилучення підрядків знаходить своє застосування в багатьох програмах, включаючи вилучення префіксів і суфіксів. Наприклад до витягти Прізвище з в назва або витягнути лише номінал із рядка, що містить як суму, так і символ валюти. Останній пояснюється нижче.
Нижче наведено реалізацію вищезгаданої програми
Java
// Java code to demonstrate the> // application of substring()> // Driver Class> public> class> Appli {> > // main function> > public> static> void> main(String args[])> > {> > // Initializing String> > String Str => new> String(> 'Rs 1000'> );> > // Printing original string> > System.out.print(> 'The original string is : '> );> > System.out.println(Str);> > // using substring() to extract substring> > // returns 1000> > System.out.print(> 'The extracted substring is : '> );> > System.out.println(Str.substring(> 3> ));> > }> }> |
Вихід
The original string is : Rs 1000 The extracted substring is : 1000