Skip to content

Proyecto

Se va a realizar un proyecto que va a contener una librería con métodos y clases útiles para facilitar ciertas operaciones.

En esta primera parte se llevará a cabo la creación de la clase de utilidad Strings que contendrá los métodos de utilidad para mejorar y facilitar el trabajo con cadenas.

Realiza los métodos que consideres para realizar estas operaciones:

  • Comprobar si una cadena no está vacía.
  • Comprobar si una cadena no es una cadena compuesta solamente por espacios.
  • Comprobar si una cadena es numérica.
  • Comprobar si una cadena es alfabética.
  • Comprobar si una cadena es alfanumérica.
  • Comprobar si una cadena es únicamente contiene caracteres especiales: !"#$%&'()*+,-./:;<=>?@[]^_`{}~
  • Comprobar si una cadena es un espacio en blanco.
  • Convertir una cadena en Upper Camel case. Ejemplo Hola mundo -> "Hola Mundo"
  • Convertir la primera letra de una cadena en mayúsculas. Ejemplo: hola mundo -> Hola mundo
  • Convertir la primera letra de una cadena en minúsculas. Ejemplo: Hola mundo -> hola mundo
  • Centrar una cadena dada una tamaño máximo de pantalla.
  • Mostrar una cadena con ellipsis dado un tamaño máximo.
  • Mostrar una cadena con saltos dado un tamaño máximo
  • Comprobar si una cadena es palíndroma, es decir, que se pueda leer exactamente igual del derecho que del revés. Por ejemplo: Roma ni se conoce sin oro, ni se conoce sin amor
  • Contar el número de palabras de una cadena.
  • Contar el número de veces que aparece una subcadena en una cadena.
  • Contar el número de veces que una cadena cumple un patrón.
  • Comprobar si una cadena cumple una expresión.
  • Comprobar si una cadena tiene un formato email.
  • Comprobar si una cadena tiene un formato telefónico.
  • Comprobar si una cadena tiene un formato de contraseña básica, es decir, que tenga como mínimo 8 caracteres.
  • Comprobar si una cadena tiene un formato de contraseña compleja, es decir, que tenga como mínimo 8 caracteres, una minúscula, una mayúscula, un dígito y un carácter especial.
  • Comprobar si una cadena es un DNI o NIE válido.
  • Comprobar si una cadena es una matrícula de coche válido.

Además se creará una clase de utilidad Maths que contendrá métodos que facilite trabajar con operaciones matemáticas:

  • Comprobar si un número es par.
  • Comprobar si un número es impar.
  • Calcular el mínimo común múltiplo de dos números.
  • Calcular el mínimo común múltiplo de tres números.
  • Calcular el máximo común divisor de dos números.
  • Calcular el máximo común divisor de tres números.
  • Invertir un número.
  • Contar el número de cifras que tiene.
  • Comprobar si un número es perfecto.
  • Comprobar si un número es primo.
  • Comprobar si un número es compuesto.
  • Calcular el factorial de un número.

Para realizar este proyecto se tendrá en cuenta:

  1. Se creará un paquete principal llamado com.NOMBRE.common donde nombre será el nombre del alumno y common el nombre del proyecto.
  2. Se creará una clase Main, donde se ponga en práctica los usos de la librería y se valorará la complejidad de dicho Main.
  3. El nombre de las funciones será en inglés y deberán ser lo suficiente claras para poder identificarlas con facilidad.
  4. Sobrescribe los métodos que consideres oportunos.
  5. El repositorio de GitHub tendrá el siguiente nombre pr03java-NOMBRE-strings siendo NOMBRE el nombre del alumno.
  6. Se declarará aquellas variables que sean necesarias inicializándolas si es necesario, indicando el tipo correspondiente.
  7. Se hará uso de funciones y procedimientos donde sea oportuno.
  8. Se hará uso de la recursividad donde sea necesario.
  9. La entrega de este proyecto se realizará a través de un enlace a un repositorio de GitHub, realizando siempre más de un commit.
  10. Se valorará la limpieza, la claridad, y la estructura del proyecto.