Skip to content
Snippets Groups Projects
Commit 572d9bad authored by Ivan Gonzalez's avatar Ivan Gonzalez
Browse files

Corregidos code smells

parent f1657ed0
No related branches found
No related tags found
1 merge request!3Develop
Pipeline #
package inf.uva.es.ivagonz.practica4;
import java.util.ArrayList;
import java.util.List;
/**
* Implementación de una Cola de amigos para la última práctica de la asignatura
......@@ -11,7 +12,9 @@ import java.util.ArrayList;
*/
public class ColaDeAmigos {
private ArrayList<Persona> cola;
private List<Persona> cola;
private final String ID_PERSONA = "El id de la Persona a buscar debe ser positivo.";
private final String ID_ASOCIADO = "El id pasado debe estar asociado a una Persona de la cola.";
/**
* Constructor que recibe una lista, que simboliza las personas que hay al
......@@ -24,7 +27,7 @@ public class ColaDeAmigos {
* si se incumple alguna de las condiciones impuestas al
* parámetro.
*/
public ColaDeAmigos(ArrayList<Persona> cola) {
public ColaDeAmigos(List<Persona> cola) {
if (cola == null)
throw new IllegalArgumentException("La lista no puede ser nula.");
if (hasElementoNull(cola))
......@@ -41,7 +44,7 @@ public class ColaDeAmigos {
* @return true si la lista tiene algún elemento nulo, false en caso
* contrario.
*/
public boolean hasElementoNull(ArrayList<Persona> lista) {
public boolean hasElementoNull(List<Persona> lista) {
for (int i = 0; i < lista.size(); i++) {
if (lista.get(i) == null)
return true;
......@@ -53,7 +56,7 @@ public class ColaDeAmigos {
*
* @return lista que simboliza la cola de la cola de amigos.
*/
public ArrayList<Persona> getCola() {
public List<Persona> getCola() {
return cola;
}
......@@ -73,9 +76,9 @@ public class ColaDeAmigos {
*/
public int reservasParaAmigos(int id) {
if (id < 0)
throw new IllegalArgumentException("El id de la Persona a buscar debe ser positivo.");
throw new IllegalArgumentException(ID_PERSONA);
if (!containsPersona(id))
throw new IllegalArgumentException("El id pasado debe estar asociado a una Persona de la cola.");
throw new IllegalArgumentException(ID_ASOCIADO);
return buscarPersona(id).getMaxAmigos();
}
......@@ -113,7 +116,7 @@ public class ColaDeAmigos {
*/
public Persona buscarPersona(int id) {
if (id < 0)
throw new IllegalArgumentException("El id de la Persona a buscar debe ser positivo.");
throw new IllegalArgumentException(ID_PERSONA);
for (int i = 0; i < getCola().size(); i++) {
if (getCola().get(i).getId() == id)
return getCola().get(i);
......@@ -137,9 +140,9 @@ public class ColaDeAmigos {
*/
public int amigosPorColar(int id) {
if (id < 0)
throw new IllegalArgumentException("El id de la Persona a buscar debe ser positivo.");
throw new IllegalArgumentException(ID_PERSONA);
if (!containsPersona(id))
throw new IllegalArgumentException("El id pasado debe estar asociado a una Persona de la cola.");
throw new IllegalArgumentException(ID_ASOCIADO);
return buscarPersona(id).getAmigosPorColar();
}
......@@ -159,15 +162,15 @@ public class ColaDeAmigos {
* si se incumple alguna de las condiciones impuestas al
* parámetro.
*/
public ArrayList<Persona> amigosPorDelante(int id) {
public List<Persona> amigosPorDelante(int id) {
if (id < 0)
throw new IllegalArgumentException("El id de la Persona a buscar debe ser positivo.");
throw new IllegalArgumentException(ID_PERSONA);
if (!containsPersona(id))
throw new IllegalArgumentException("El id pasado debe estar asociado a una Persona de la cola.");
throw new IllegalArgumentException(ID_ASOCIADO);
Persona p = buscarPersona(id);
int indicePersona = getCola().indexOf(p);
int indiceAmigos = indicePersona - (p.getMaxAmigos() - p.getAmigosPorColar());
ArrayList<Persona> amigosEnCola = new ArrayList<Persona>();
List<Persona> amigosEnCola = new ArrayList<>();
for (int i = indiceAmigos; i < indicePersona; i++) {
amigosEnCola.add(getCola().get(i));
}
......
package inf.uva.es.ivagonz.practica4;
import java.util.ArrayList;
import java.util.List;
/**
* Implementación de una Persona para poder llevar a cabo la funcionalidad de
......@@ -13,8 +14,8 @@ public class Persona {
private String nombre;
private int id;
private ArrayList<Persona> amigos;
private ArrayList<Persona> conocidos;
private List<Persona> amigos;
private List<Persona> conocidos;
private int maxAmigos;
private int amigosPorColar;
......@@ -39,7 +40,7 @@ public class Persona {
* si se incumple alguna de las condiciones impuestas a los
* parámetros.
*/
public Persona(String nombre, int id, ArrayList<Persona> amigos, ArrayList<Persona> conocidos) {
public Persona(String nombre, int id, List<Persona> amigos, List<Persona> conocidos) {
if (nombre == null)
throw new IllegalArgumentException("El nombre no puede ser null.");
if (nombre.equals(""))
......@@ -70,7 +71,7 @@ public class Persona {
* correcto: no nulo.
* @return true si hay algún elemento nulo, false en caso contrario.
*/
public boolean hasElementoNull(ArrayList<Persona> lista) {
public boolean hasElementoNull(List<Persona> lista) {
if (lista == null)
throw new IllegalArgumentException("La lista no puede ser nula.");
for (int i = 0; i < lista.size(); i++) {
......@@ -238,7 +239,7 @@ public class Persona {
/**
* @return lista de amigos de this.
*/
public ArrayList<Persona> getAmigos() {
public List<Persona> getAmigos() {
return amigos;
}
......@@ -246,7 +247,7 @@ public class Persona {
*
* @return lista de conocidos de this.
*/
public ArrayList<Persona> getConocidos() {
public List<Persona> getConocidos() {
return conocidos;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment