repositories
/
Persons_Comparator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add an ArrayList of persons to the Person class.
[Persons_Comparator.git]
/
src
/
Eye.java
diff --git
a/src/Eye.java
b/src/Eye.java
index 7d5d80401879470faa13c37560b705f4d1fedd63..bf83b8a0410ac43b17604fdae45f82f8935aa655 100644
(file)
--- a/
src/Eye.java
+++ b/
src/Eye.java
@@
-1,19
+1,33
@@
import java.awt.Color;
import java.awt.Color;
-import java.util.List;
-import java.util.Arrays;
public class Eye implements Comparable<Eye> {
private Color color;
public class Eye implements Comparable<Eye> {
private Color color;
- private
List<String> colorList = Arrays.asList("black", "green", "blue", "brown")
;
+ private
String[] colorsList = {"black", "green", "blue", "brown"}
;
+ Eye() {
+ }
+
+ /**
+ * @param color
+ */
Eye(String color) {
setColor(color);
}
Eye(String color) {
setColor(color);
}
+ public String[] getColorsList() {
+ return colorsList;
+ }
+
+ /**
+ * @return
+ */
public Color getColor() {
return color;
}
public Color getColor() {
return color;
}
+ /**
+ * @param color
+ */
public void setColor(String color) {
if (validateColor(color)) {
if (color.equals("brown"))
public void setColor(String color) {
if (validateColor(color)) {
if (color.equals("brown"))
@@
-22,21
+36,44
@@
public class Eye implements Comparable<Eye> {
this.color = Color.getColor(color);
} else {
this.color = Color.getColor(color);
} else {
- throw new IllegalArgumentException("Color must be
" + colorList
.toString());
+ throw new IllegalArgumentException("Color must be
" + new Eye()
.toString());
}
}
}
}
+ /**
+ * @param color
+ * @return
+ */
private boolean validateColor(String color) {
private boolean validateColor(String color) {
- return colorList.contains(color);
+ for (String c : colorsList) {
+ if (color.equals(c)) {
+ return true;
+ }
+ }
+ return false;
}
}
+ /**
+ * @param eye
+ * @return
+ */
@Override
public int compareTo(Eye eye) {
double r_diff = this.getColor().getRed() - eye.getColor().getRed();
double g_diff = this.getColor().getGreen() - eye.getColor().getGreen();
double b_diff = this.getColor().getBlue() - eye.getColor().getBlue();
@Override
public int compareTo(Eye eye) {
double r_diff = this.getColor().getRed() - eye.getColor().getRed();
double g_diff = this.getColor().getGreen() - eye.getColor().getGreen();
double b_diff = this.getColor().getBlue() - eye.getColor().getBlue();
- //
See https://en.wikipedia.org/wiki/Color_difference
+ //See https://en.wikipedia.org/wiki/Color_difference
Double distance = Math.sqrt(2 * Math.pow(r_diff, 2) + 4 * Math.pow(g_diff, 2) + 3 * Math.pow(b_diff, 2));
return distance.intValue();
}
Double distance = Math.sqrt(2 * Math.pow(r_diff, 2) + 4 * Math.pow(g_diff, 2) + 3 * Math.pow(b_diff, 2));
return distance.intValue();
}
+
+ @Override
+ public String toString() {
+ StringBuilder stringBuilder = new StringBuilder();
+ for (String c : colorsList) {
+ stringBuilder.append(" ");
+ stringBuilder.append(c);
+ }
+ return stringBuilder.toString();
+ }
}
}