X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2FWeight.java;h=5e33327fac7ec77eac23a14ec0aa46a6b4e65342;hb=62e26730c12aa80689e068908090d801869ab701;hp=3f2a829163130f8bba5c5ed1e22e5fdd0fa916c3;hpb=9749119587561f5848349b7a1b9e7d9342944f0d;p=Persons_Comparator.git diff --git a/src/Weight.java b/src/Weight.java index 3f2a829..5e33327 100644 --- a/src/Weight.java +++ b/src/Weight.java @@ -1,6 +1,9 @@ -public class Weight { +public class Weight implements Comparable { private int weight; + Weight() { + } + Weight(int weight) { setWeight(weight); } @@ -12,10 +15,21 @@ public class Weight { public void setWeight(int weight) { if (validateWeight(weight)) { this.weight = weight; - } /* FIXME: raise an error */ + } else { + throw new IllegalArgumentException("Weight cannot be negative or zero"); + } } private boolean validateWeight(int weight) { return (weight > 0); } + + @Override + public int compareTo(Weight weight) { + int distance = weight.getWeight() - this.getWeight(); + if (distance >= 0) + return distance; + else + return -distance; + } }