Refine the weight max and its drawing.
[Persons_Comparator.git] / src / Weight.java
index 2a8c8127d7cb17f63cbe5aa8e6a98a26209a3f24..c979f3ddcab3911914e519b71075d4023fe0507a 100644 (file)
@@ -1,10 +1,28 @@
 public class Weight {
+    private int min = 2;
+    private int max = 250;
+    private int defaultWeight = 72;
     private int weight;
 
+    Weight() {
+    }
+
     Weight(int weight) {
         setWeight(weight);
     }
 
+    public int getMin() {
+        return min;
+    }
+
+    public int getMax() {
+        return max;
+    }
+
+    public int getDefaultWeight() {
+        return defaultWeight;
+    }
+
     public int getWeight() {
         return weight;
     }
@@ -13,11 +31,25 @@ public class Weight {
         if (validateWeight(weight)) {
             this.weight = weight;
         } else {
-            throw new IllegalArgumentException("Weight cannot be negative or zero");
+            throw new IllegalArgumentException("Weight must be between " + this.getMin() + " and " + this.getMax());
         }
     }
 
     private boolean validateWeight(int weight) {
-        return (weight > 0);
+        return (weight >= getMin() && weight <= getMax());
+    }
+
+    public Integer[] getValuesArray() {
+        int arrayLength = this.getMax() - this.getMin() + 1;
+        Integer[] intArray = new Integer[arrayLength];
+        for (int i = 0; i < intArray.length; i++) {
+            intArray[i] = this.getMin() + i;
+        }
+        return intArray;
+    }
+
+    public int distanceTo(Weight weight) {
+        int distance = weight.getWeight() - this.getWeight();
+        return Math.abs(distance);
     }
 }