Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: eduardoc en 01 de Julio 2016, 14:45

Título: Java posición de una letra de una palabra no coinciden los índices raro CU00649B
Publicado por: eduardoc en 01 de Julio 2016, 14:45
Buenas, dejo otro ejercicio. El CU00649B del manual de programador java como si estuvieras en primero. Gracias! Saludos,

Edu.

Código: [Seleccionar]
// (CU00649B).

public class combinarParteDeStrings{
    // Constructor vacío.
    public combinarParteDeStrings(){}
   
    // Función para combinar las cadenas.
    public String combinarCadenas(String cadena1, String cadena2, String cadena3){
        return cadena1.substring(0,2) + " " + cadena2.substring(0,4) + "-" + cadena3.substring(0,6);
    }
}


Otro tema:

De la lectura de la clase me surge una duda en:

"fraccionDeString = nombreDelString.substring (carácter Inicial Incluido, carácter Final Excluido)"
y al ver el ejemplo: “hamburger”.substring (4, 8 ); devuelve “urge”

Entiendo que el valor inicial ("4") no está incluido mientras que el valor final ("8") si lo está.
Revisé la documentación de Java y menciona lo mismo por lo que... no entiendo.

Gracias de antemano.






Título: Re:Ejercicio: (CU00649B) - Estudiando el concepto de método Java...
Publicado por: Dimitar Stefanov en 03 de Julio 2016, 14:12
Hola, Edu.

Primero, tienes el ejercicio bien resuelto.

El recuento de las posiciones de los carácteres empieza de "0". Es decir, la palabra "hamburger" se contaría así:

h = posición 0;
a = posición 1;
m = posición 2;
b = posición 3;
u = posición 4;
etc.

Por lo tanto, cuando invocas el método "substring(par1, par2)" sobre la cadena de texto "humburger" y estableces como parámetros "4,8" te devolverá "urge". La posición 4 corresponde a la letra "u" y la posición 8 corresponderá a la letra "r" que quedará excluida.

Espero que te haya servido mi explicación.

Saludos.