Автор оригинала: Pankaj Kumar.
Метод Java String substring() возвращает подстроку этой строки. Этот метод всегда возвращает новую строку, а исходная строка остается неизменной, поскольку строка неизменна в Java .
Методы подстроки строки Java()
Метод подстроки строки Java перегружен и имеет два варианта.
подстрока(int beginIndex): Этот метод возвращает новую строку, являющуюся подстрокой этой строки. Подстрока начинается с символа в указанном индексе и продолжается до конца этой строки.подстрока(int beginIndex, int endIndex): Подстрока начинается с указанного beginIndex и продолжается до символа в индексе endIndex – 1. Таким образом, длина подстроки равна (endIndex – beginIndex).
Метод строковой подстроки() Важные моменты
Оба метода строковой подстроки могут выбрасывать
Исключение IndexOutOfBoundsExceptionпри выполнении любого из приведенных ниже условий.- если начальный индекс отрицательный
- Значение endIndex больше длины этого строкового объекта
- beginIndex больше, чем endIndex
- beginIndex является включающим, а endIndex является исключительным в обоих методах подстроки.
Пример подстроки строки Java()
Вот простая программа для подстроки на java.
package com.journaldev.util;
public class StringSubstringExample {
public static void main(String[] args) {
String str = "www.journaldev.com";
System.out.println("Last 4 char String: " + str.substring(str.length() - 4));
System.out.println("First 4 char String: " + str.substring(0, 4));
System.out.println("website name: " + str.substring(4, 14));
}
}
Вывод приведенного выше примера программы подстроки является:
Last 4 char String: .com First 4 char String: www. website name: journaldev
Проверка палиндрома методом подстроки()
Мы можем использовать метод substring (), чтобы проверить, является ли строка палиндромом или нет.
package com.journaldev.util;
public class StringPalindromeTest {
public static void main(String[] args) {
System.out.println(checkPalindrome("abcba"));
System.out.println(checkPalindrome("XYyx"));
System.out.println(checkPalindrome("871232178"));
System.out.println(checkPalindrome("CCCCC"));
}
private static boolean checkPalindrome(String str) {
if (str == null)
return false;
if (str.length() <= 1) {
return true;
}
String first = str.substring(0, 1);
String last = str.substring(str.length() - 1);
if (!first.equals(last))
return false;
else
return checkPalindrome(str.substring(1, str.length() - 1));
}
}
Здесь мы проверяем, совпадают ли первая буква и последняя буква или нет. Если они не совпадают, верните значение false. В противном случае снова вызовите метод, рекурсивно передавая подстроку с удаленными первой и последней буквами.
Ссылка: Oracle API Doc