-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEtapa.java
More file actions
146 lines (129 loc) · 3.47 KB
/
Copy pathEtapa.java
File metadata and controls
146 lines (129 loc) · 3.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
/**
* Clase siemple que almacena el nombre y la dificultad de una etapa
*
* @author Alexeido, Thander y Natera
* @version 31-10-2022
*/
import java.io.*;
import java.io.IOException;
import java.nio.*;
import java.util.*;
public class Etapa {
private String nombre;
private EtapaDificultad dificultad;
/*
* Grados de dificultad
* VACIA = 0;
* CORTA = 150;
* INTERMEDIA = 200;
* LARAG = 225;
*/
private EtapaDistancia distancia;
/*
* Grados de distancia
* VACIA = 0;
* SENCILLA = 0.9;
* NORMAL = 1.0;
* COMPLEJA = 1.1;
*/
/**
* Constructor para la clase Etapa
*/
public Etapa() {
this.nombre = "";
setDificultad(EtapaDificultad.VACIA);
setDistancia(EtapaDistancia.VACIA);
}
/**
* Constructor parametrizado para la clase Etapa
*/
public Etapa(String nombre, EtapaDificultad dificultad, EtapaDistancia distancia) {
this.nombre = nombre;
setDificultad(dificultad);
setDistancia(distancia);
}
/**
* @return Nombre de la etapa
*/
public String getNombre() {
return nombre;
}
/**
* @return Nivel de dificultad
*/
public double getDificultad() {
return dificultad.getValor();
}
/**
* @return El enum de la dificultad
*/
public EtapaDificultad getEtapaDificultad() {
return dificultad;
}
/**
* @return Distancia de la etapa
*/
public double getDistancia() {
return distancia.getValor();
}
/**
* @return El enum de la etapa
*/
public EtapaDistancia getEtapaDistancia() {
return distancia;
}
/**
* @param nombre El nombre de la etapa cambia por el insertado como parametro
*/
public void setnombre(String nombre) {
this.nombre = nombre;
}
/**
* @param dificultad La dificultad de la etapa cambia por la insertada como
* parametro
*/
public void setDificultad(EtapaDificultad dificultad) {
this.dificultad = dificultad;
}
/**
* @param distancia La distancia de la etapa cambia por la insertada como
* parametro
*/
public void setDistancia(EtapaDistancia distancia) {
this.distancia = distancia;
}
/**
* Muestra la información de la etapa
*/
/*
public void mostrarTodo(BufferedWriter ficheroOut) {
try {
System.out.println("<Etapa: " + nombre + "> " + dificultad + " " + distancia);
ficheroOut.write("<Etapa: " + nombre + "> " + dificultad + " " + distancia + '\n');
} catch (IOException e) {
System.err.println("There was a problem writing to ");
}
}
*/
// toString de la clase Etapa
@Override
public String toString() {
return "<Etapa: " + getNombre() + " dificultad: " + getEtapaDificultad() + " distancia: " + getEtapaDistancia();
}
// equals de la clase Etapa
@Override
public boolean equals(Object o) {
if (o == this)
return true;
if (!(o instanceof Etapa)) {
return false;
}
Etapa etapa = (Etapa) o;
return Objects.equals(nombre, etapa.nombre) && Objects.equals(dificultad, etapa.dificultad) && Objects.equals(distancia, etapa.distancia);
}
// hasCode de la clase Etapa
@Override
public int hashCode() {
return Objects.hash(nombre, dificultad, distancia);
}
}