Esempi del metodo substring() di Java String

Il metodo Java String substring() restituisce la sottostringa di questa stringa. Questo metodo restituisce sempre una nuova stringa e la stringa originale rimane invariata perché String è immutabile in Java.

Metodi Java String substring()

Il metodo Java String substring è sovraccaricato e ha due varianti.

  1. substring(int beginIndex): Questo metodo restituisce una nuova stringa che è una sottostringa di questa stringa. La sottostringa inizia con il carattere all’indice specificato ed estende fino alla fine di questa stringa.
  2. substring(int beginIndex, int endIndex): La sottostringa inizia all’indice beginIndex specificato e si estende al carattere all’indice endIndex – 1. Quindi la lunghezza della sottostringa è (endIndex – beginIndex).

Punti Importanti del Metodo substring() della Stringa

  1. Entrambi i metodi di sottosequenza della stringa possono generare IndexOutOfBoundsException se si verificano una qualsiasi delle seguenti condizioni.
    • se beginIndex è negativo
    • endIndex è maggiore della lunghezza di questo oggetto String
    • beginIndex è maggiore di endIndex
  2. beginIndex è inclusivo ed endIndex è esclusivo in entrambi i metodi di sottosequenza.

Esempio di sottosequenza di String in Java

Ecco un programma semplice per la sottosequenza in 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));
	}
}

Output del programma di esempio di sottosequenza sopra è:

Last 4 char String: .com
First 4 char String: www.
website name: journaldev

Verifica del palindromo utilizzando il metodo substring()

Possiamo utilizzare il metodo substring() per verificare se una stringa è un palindromo o no.

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));
	}
}

Qui stiamo controllando se la prima lettera e l’ultima lettera sono uguali o meno. Se non sono uguali, restituisci false. Altrimenti, chiama nuovamente il metodo in modo ricorsivo passando la sottostringa con la prima e l’ultima lettera rimosse.

Puoi controllare più esempi di stringa dal nostro Repository GitHub.

Riferimento: Documentazione API di Oracle

Source:
https://www.digitalocean.com/community/tutorials/java-string-substring