Mezclar cadenas
Publicado por Juan (10 intervenciones) el 22/12/2020 17:28:38
Buenas a todxs:
Ante todo, gracias por la ayuda. Estoy haciendo un ejercicio y me salta constantemente la excepción java.lang.StringIndexOutOfBoundsException. El ejercicio consiste en escribir un programa en Java que:
- lea dos cadenas de caracteres por teclado de longitud al menos cinco caracteres cada una;
- genere una nueva cadena cuyo resultado va a ser la mezcla de los caracteres de las dos cadenas anteriores intercalando carácter a carácter;
- muestre por pantalla esa nueva cadena resultante.
- La cadena final debe construirse con StringBuilder.
Por otra parte, en el código no debe aparecer ningún "throws" ni debe ser necesario capturar ninguna excepción. Debo escribir correctamente tu programa para que no se "salga" de las cadenas y así evitar esas posibles excepciones.
La primera parte la tengo bien, el problema viene cuando tengo que hacer el bucle para mezclar las cadenas. Aquí mi código:
Entiendo que el error viene porque el string que se genera tiene un tamaño mayor a los anteriores, pero es imposible para mi encontrar la solución.
Toda ayuda es bienvenida!
Juan
Ante todo, gracias por la ayuda. Estoy haciendo un ejercicio y me salta constantemente la excepción java.lang.StringIndexOutOfBoundsException. El ejercicio consiste en escribir un programa en Java que:
- lea dos cadenas de caracteres por teclado de longitud al menos cinco caracteres cada una;
- genere una nueva cadena cuyo resultado va a ser la mezcla de los caracteres de las dos cadenas anteriores intercalando carácter a carácter;
- muestre por pantalla esa nueva cadena resultante.
- La cadena final debe construirse con StringBuilder.
Por otra parte, en el código no debe aparecer ningún "throws" ni debe ser necesario capturar ninguna excepción. Debo escribir correctamente tu programa para que no se "salga" de las cadenas y así evitar esas posibles excepciones.
La primera parte la tengo bien, el problema viene cuando tengo que hacer el bucle para mezclar las cadenas. Aquí mi código:
1
2
3
4
5
6
String primeraCadena, segundaCadena, terceraCadena;
StringBuilder resultado = new StringBuilder ();
for (int i=0; i < primeraCadena.length()+segundaCadena.length(); i++){
terceraCadena = primeraCadena.substring(i,i++) + segundaCadena.substring(i,i++) ;
System.out.print(terceraCadena);
Entiendo que el error viene porque el string que se genera tiene un tamaño mayor a los anteriores, pero es imposible para mi encontrar la solución.
Toda ayuda es bienvenida!
Juan
Valora esta pregunta


-1