Foro de elhacker.net

Programación => Java => Mensaje iniciado por: andressalasmx en 9 Noviembre 2014, 02:02 am



Título: Recorrer una string para obtener iniciales
Publicado por: andressalasmx en 9 Noviembre 2014, 02:02 am
Hola! Necesito manipular una string en Java que dice más o menos así:
"Andrés, María, Melissa, Valeria y Agustín, Carmen"

Lo que tengo que hacer es tomar las iniciales de cada nombre y devolver una sola nueva string con esas iniciales pero he intentado de todo y nada me sale.. En el instituto me prohíben usar funciones especiales como StringTokenizer o Split entonces debería hacerlo con un for que recorra la hilera. ¿Alguna sugerencia? Estoy muy confundido y no se como empezar (por esta razón no pongo ningún código).

¡GRACIAS!


Título: Re:
Publicado por: ivancea96 en 9 Noviembre 2014, 02:11 am
Propongo 2 opciones: La más sencilla, sería recorrer la cadena y coger sólo las letras mayúsculas. Claro que esto solo funcionaría si los nombres tienen ese formato.
La otra es coger la letra que cumpla una de estas condiciones: o es la primera letra de la cadena, o es la primera letra encontrada después de una coma.

Alguna de esas opciones te ha de servir.


Título: Re: Recorrer una string para obtener iniciales
Publicado por: andressalasmx en 9 Noviembre 2014, 02:47 am
Voy a intentar hacerlo usando la segunda opción...

Lo que voy a hacer es recorrer la string, así:

for(int letras=0; letras<(cadena.length()); letras++){
      char posicion = cadena.charAt(letras);
      if(posicion == ','){

el problema es que no se que hacer o poner después de poner la condición if(posicion == ',')


Título: Re:
Publicado por: ivancea96 en 9 Noviembre 2014, 10:12 am
Dentro del "if posicion == ','" puedes poner otro for, que empieze en esa posición, y se detenga cuando encuentre una letra.
(También recuerda añadir la inicial de la primera palabra)