Поиск по сайту:

Примеры методов Java String substring()


Метод Java String substring() возвращает подстроку этой строки. Этот метод всегда возвращает новую строку, а исходная строка остается неизменной, поскольку String неизменяем в Java.

Методы подстроки Java String()

  1. substring(int beginIndex): этот метод возвращает новую строку, которая является подстрокой этой строки. Подстрока начинается с символа по указанному индексу и продолжается до конца этой строки.
  2. substring(int beginIndex, int endIndex): подстрока начинается с указанного beginIndex и продолжается до символа с индексом endIndex - 1. Таким образом, длина подстроки равна (endIndex - beginIndex).

Метод String substring() Важные моменты

  1. Оба метода строковых подстрок могут генерировать IndexOutOfBoundsException, если выполняется одно из следующих условий.
    • если значение beginIndex отрицательное
    • endIndex больше, чем длина этого объекта String
    • beginIndex больше, чем endIndex
  2. beginIndex является инклюзивным, а endIndex является исключительным в обоих методах подстроки.

Пример подстроки Java String()

Вот простая программа для подстроки в 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()

Мы можем использовать метод substring(), чтобы проверить, является ли String палиндромом или нет.

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. В противном случае вызовите метод еще раз, рекурсивно передав подстроку с удаленными первой и последней буквами.

Вы можете проверить больше примеров строк из нашего репозитория GitHub.

Ссылка: документ Oracle API