Método de subcadena () devuelve una nueva cadena que es una subcadena de una cadena determinada. El método Java String substring () se utiliza para obtener la subcadena de una cadena determinada según los índices pasados. Hay dos variaciones de este método. En esta guía veremos cómo utilizar este método con la ayuda de ejemplos.
Variantes del método String substring ()
Hay dos formas de utilizar el método substring ():
1. Cuando pasamos solo el índice inicial:
String substring(int beginIndex)
Devuelve la subcadena que comienza en el índice especificado, es decir, beginIndex y se extiende hasta el carácter presente al final de la cadena. Por ejemplo – "Chaitanya".substring(2)
estaría de vuelta "aitanya"
. BeginIndex es inclusivo, por lo que el carácter en el índice 2 se incluye en la subcadena. Este método genera IndexOutOfBoundsException
Si beginIndex es menor que cero o mayor que la longitud de String (beginIndex <0 ||> longitud de String).
2. Cuando superamos ambos índices, índice inicial e índice final:
String substring(int beginIndex, int endIndex)
Devuelve una nueva cadena que es una subcadena de esta cadena. La subcadena comienza en el beginIndex especificado y se extiende hasta el carácter en el índice endIndex – 1. Por lo tanto, la longitud de la subcadena es endIndex-beginIndex. En otras palabras, puede decir que beginIndex es inclusivo y endIndex es exclusivo mientras obtiene la subcadena.
Por ejemplo – "Chaitanya".substring(2,5)
estaría de vuelta "ait"
. Lanzamiento IndexOutOfBoundsException
Si el beginIndex
es menor que cero O beginIndex > endIndex
O endIndex
es mayor que la longitud de String.
Ejemplo de subcadena Java String ()
Ahora que entendemos los conceptos básicos del método substring (), tomemos un ejemplo para comprender el uso de este método.
Aquí tenemos una cuerda str
y estamos descubriendo la subcadena de esta cadena usando el método substring ().
public class SubStringExample{ public static void main(String args[]) { String str= new String("quick brown fox jumps over the lazy dog"); System.out.println("Substring starting from index 15:"); System.out.println(str.substring(15)); System.out.println("Substring starting from index 15 and ending at 20:"); System.out.println(str.substring(15, 20)); } }
Producción:
Substring starting from index 15: jumps over the lazy dog Substring starting from index 15 and ending at 20: jump
Nota: Mucha gente está confundida de que la subcadena devuelta en la segunda llamada al método debería ser saltos en lugar de saltar, esto se debe a que la longitud de la subcadena devuelta debería ser endIndex-beginIndex, en nuestro ejemplo beginIndex es 15 y endIndex es 20, por lo que la longitud de la subcadena devuelta debe ser 20-15 = 5. La respuesta correcta es “saltar” porque hay un espacio antes del salto, por lo que la longitud de la subcadena “saltar” es 5 (incluido el espacio).
Para evitar más confusión, comparto otro ejemplo de este método que es fácil de seguir.
Otro ejemplo de un método String substring ()
public class JavaExample{ public static void main(String args[]) { String mystring = new String("Lets Learn Java"); /* The index starts with 0, similar to what we see in the arrays * The character at index 0 is s and index 1 is u, since the beginIndex * is inclusive, the substring is starting with char 'u' */ System.out.println("substring(1):"+mystring.substring(1)); /* When we pass both beginIndex and endIndex, the length of returned * substring is always endIndex - beginIndex which is 3-1 =2 in this example * Point to note is that unlike beginIndex, the endIndex is exclusive, that is * why char at index 1 is present in substring while the character at index 3 * is not present. */ System.out.println("substring(1,3):"+mystring.substring(1,3)); } }
Producción:
Referencia: Subcadena Javadoc ()
❮ Anterior Siguiente ❯