Palabra con mayúsculas y minúsculas
El ejemplo que habéis pedido para poder poner una palabra con mayúsculas y minúsculas me ha resultado muy divertido y me ha dado pie a escribirlo de un par de formas. Una de ella apoyándose en los nuevos Stream de Java 8. Así que los vamos a verlos en detalle. Pero empecemos por el más sencillo. En este caso vamos a convertir los caracteres de una palabra con mayúsculas y minúsculas de forma indistinta. Es decir, si tenemos la frase:
Esto es una frase muy interesanteConvertirla en:
EsTo eS UnA FrAsE MuY InTeReSaNtELo primero que hacemos es utilizar una clase StringBuilder para construir la cadena.
StringBuilder sCadena = new StringBuilder("Esto es una frase muy interesante");Lo siguiente que haremos será ir recorriendo cada uno de los caracteres de la cadena, mediante un bucle for.
for (int x=0;x<sCadena.length();x++) { ... }Por cada uno de los caracteres comprobaremos si este ocupa una posición par o impar, utilizando el operador de módulo. Ya que dependiendo de su posición lo convertiremos a mayúsculas o minúsculas.
for (int x=0;x<sCadena.length();x++) { caracter = Character.toString(sCadena.charAt(x)); if (x%2 == 0) { ... } else { ... }Para acceder a un carácter nos vamos a apoyar en el método .charAt() y para modificarlo utilizaremos el método .setCharAt().
Además deberemos de convertir el carácter en un String para poder utilizar las funciones .toLowerCase() y .toUpperCase().
De esta forma el código para obtener la palabra con mayúsculas y minúsculas de forma alterna será el siguiente:
for (int x=0;x<sCadena.length();x++) { caracter = Character.toString(sCadena.charAt(x)); if (x%2 == 0) sCadena.setCharAt(x,caracter.toUpperCase().charAt(0)); else sCadena.setCharAt(x,caracter.toLowerCase().charAt(0));Descarga el código de Palabra con mayúsculas y minúsculas
El artículo explica cómo alternar mayúsculas y minúsculas en una palabra utilizando Java y su clase StringBuilder.