Cadenas de caracteres y arrays.

Caso práctico

Ocultar

Fotografía de María.
Ministerio de Educación.(Uso educativo-nc. Elaboración propia)

Ana ha recibido un pequeño encargo de parte de su tutora, María. Se trata de que realice un pequeño programita, muy sencillo pero fundamental.

-Hola Ana -dice María-, hoy tengo una tarea especial para ti.

-¿Sí? -responde Ana-. Estoy deseando, últimamente no hay nada que se me resista, llevo dos semanas en racha.

-Bueno, quizás esto se te resista un poco más. Es fácil, pero tiene cierta complicación. Un cliente para el que hicimos una aplicación, nos ha preguntado si podemos ayudarle. El cliente tiene una aplicación para gestionar sus clientes. Ahora está pensando en que se le añada el correo electrónico de cada cliente, para en un futuro poderle enviar publicidad y otras cosas. Además, también quiere que la aplicación busque cadenas de caracteres, por ejemplo, para cuando le interese ver los clientes cuyo apellido contenga "Garc" o la cadena que sea.

-¿Qué? -dice Ana con cierta perplejidad.

-Me alegra que te guste -dice María esbozando una sonrisa pícara-, sé que te atraen los retos.

-Pero, ¿eso cómo se hace? ¿Cómo compruebo yo si un correo electrónico es válido? -pregunta Ana.

-Bueno, tranquila, que es más fácil de lo que parece, lo del correo electrónico lo puedes hacer con expresiones regulares. Y respecto a lo de ver las cadenas de caracteres que contienen o empiezan por tal o cual otra cadena, recuerda que Java tiene un montón de métodos y operadores para trabajar con cadenas de caracteres.

-Bueno -dice María justo después de resoplar tres veces seguidas-, parece que no será tan difícil después de todo.

Ocultar

magen de las manos de una persona insertando datos en el ordenador a través del teclado.

Cuando el volumen de datos a manejar por una aplicación es elevado, no basta con utilizar variables. Manejar los datos de un único cliente en una aplicación puede ser relativamente sencillo, pues un cliente está compuesto por una serie de datos y eso simplemente se traduce en varias variables. Pero, ¿qué ocurre cuando en una aplicación tenemos que gestionar varios clientes a la vez?

Lo mismo ocurre en otros casos. Para poder realizar ciertas aplicaciones se necesita poder manejar datos que van más allá de meros datos simples (números y letras). A veces, los datos que tiene que manejar la aplicación son datos compuestos, es decir, datos que están compuestos a su vez de varios datos más simples. Por ejemplo, una persona está compuesto por varios datos, los datos podrían ser el nombre del cliente, la dirección donde vive, la fecha de nacimiento, etc.

Los datos compuestos son un tipo de estructura de datos, y en realidad ya los has manejado. Las clases son un ejemplo de estructuras de datos que permiten almacenar datos compuestos. Y el objeto en sí, una instancia de la clase, sería el dato compuesto. Pero, a veces, los datos tienen estructuras aún más complejas, y son necesarias soluciones adicionales.

Más adelante veremos esas soluciones adicionales. En este tema nos centraremos en las cadenas de caracteres y en los vectores o arrays.