diff --git a/.classpath b/.classpath
index af1430b..563565b 100644
--- a/.classpath
+++ b/.classpath
@@ -12,7 +12,7 @@
-
+
diff --git a/.travis.yml b/.travis.yml
index dff5f3a..45e9d6b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1 +1,4 @@
language: java
+
+jdk:
+ - oraclejdk8
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..8fb4d65
--- /dev/null
+++ b/README.md
@@ -0,0 +1,4 @@
+jax-ftd-day-4-java-assignment
+===
+
+[](https://travis-ci.org/dgdang97/jax-ftd-day-4-java-assignment)
diff --git a/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java b/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java
index 1060573..f5cda7d 100644
--- a/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java
+++ b/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java
@@ -4,40 +4,64 @@ public class Butterpillar {
// any instance fields should be private
+ private double length;
+ private double leavesEaten;
+
public double getLength() {
- return 0; // TODO: to be implemented
+ return length; // TODO: to be implemented
}
public void setLength(double length) {
- // TODO: to be implemented
+ this.length = length; // TODO: to be implemented
}
public double getLeavesEaten() {
- return 0; // TODO: to be implemented
+ return leavesEaten; // TODO: to be implemented
}
public void setLeavesEaten(double leavesEaten) {
- // TODO: to be implemented
+ this.leavesEaten = leavesEaten; // TODO: to be implemented
}
public boolean equals(Butterpillar b) {
- return false; // TODO: to be implemented
+ boolean check = b.leavesEaten == b.getLeavesEaten() && b.length == b.getLength();
+ return check; // TODO: to be implemented
}
@Override
public String toString() {
- return null; // TODO: to be implemented
+ return "Butterpillar [length=" + length + ", leavesEaten=" + leavesEaten + "]";
}
@Override
- public boolean equals(Object o) {
- if (o instanceof Butterpillar) {
- return this.equals((Butterpillar) o);
- } else {
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ long temp;
+ temp = Double.doubleToLongBits(leavesEaten);
+ result = prime * result + (int) (temp ^ (temp >>> 32));
+ temp = Double.doubleToLongBits(length);
+ result = prime * result + (int) (temp ^ (temp >>> 32));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
return false;
- }
+ if (getClass() != obj.getClass())
+ return false;
+ Butterpillar other = (Butterpillar) obj;
+ if (Double.doubleToLongBits(leavesEaten) != Double.doubleToLongBits(other.leavesEaten))
+ return false;
+ if (Double.doubleToLongBits(length) != Double.doubleToLongBits(other.length))
+ return false;
+ return true;
}
}
+
diff --git a/src/main/java/com/cooksys/butterpillar/model/Catterfly.java b/src/main/java/com/cooksys/butterpillar/model/Catterfly.java
index 81ff09a..4675d8e 100644
--- a/src/main/java/com/cooksys/butterpillar/model/Catterfly.java
+++ b/src/main/java/com/cooksys/butterpillar/model/Catterfly.java
@@ -3,39 +3,61 @@
public class Catterfly {
// any instance fields should be private
-
+ private double wingspan;
+ private double weight;
+
public double getWingspan() {
- return 0; // to be implemented
+ return wingspan; // to be implemented
}
public void setWingspan(double wingspan) {
- // to be implemented
+ this.wingspan = wingspan; // to be implemented
}
public double getWeight() {
- return 0; // TODO: to be implemented
+ return weight; // TODO: to be implemented
}
public void setWeight(double weight) {
- // TODO: to be implemented
+ this.weight = weight; // TODO: to be implemented
}
public boolean equals(Catterfly c) {
- return false; // TODO: to be implemented
+ boolean check = (c.weight == c.getWeight() && c.wingspan == c.getWingspan());
+ return check; // TODO: to be implemented
}
@Override
public String toString() {
- return null; // TODO: to be implemented
+ return "Catterfly [wingspan-" + wingspan + ", weight-" + weight + "]"; // TODO: to be implemented
}
@Override
- public boolean equals(Object o) {
- if (o instanceof Catterfly) {
- return this.equals((Catterfly) o);
- } else {
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ long temp;
+ temp = Double.doubleToLongBits(weight);
+ result = prime * result + (int) (temp ^ (temp >>> 32));
+ temp = Double.doubleToLongBits(wingspan);
+ result = prime * result + (int) (temp ^ (temp >>> 32));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ Catterfly other = (Catterfly) obj;
+ if (Double.doubleToLongBits(weight) != Double.doubleToLongBits(other.weight))
+ return false;
+ if (Double.doubleToLongBits(wingspan) != Double.doubleToLongBits(other.wingspan))
return false;
- }
+ return true;
}
}
diff --git a/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java b/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java
index 3f034fd..20d1c58 100644
--- a/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java
+++ b/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java
@@ -3,47 +3,76 @@
public class GrowthModel {
// any instance fields should be private
-
+ private double lengthToWingspan;
+ private double leavesEatenToWeight;
+
public double getLengthToWingspan() {
- return 0; // to be implemented
+ return lengthToWingspan; // to be implemented
}
public void setLengthToWingspan(double lengthToWingspan) {
- // to be implemented
+ this.lengthToWingspan = lengthToWingspan; // to be implemented
}
public double getLeavesEatenToWeight() {
- return 0; // to be implemented
+ return leavesEatenToWeight; // to be implemented
}
public void setLeavesEatenToWeight(double leavesEatenToWeight) {
- // to be implemented
+ this.leavesEatenToWeight = leavesEatenToWeight; // to be implemented
}
public Catterfly butterpillarToCatterfly(Butterpillar butterpillar) {
- return null; // to be implemented
+ Catterfly catterfly = new Catterfly();
+ catterfly.setWingspan(butterpillar.getLength() * getLengthToWingspan());
+ catterfly.setWeight(butterpillar.getLeavesEaten() * getLeavesEatenToWeight());
+ return catterfly; // to be implemented
}
public Butterpillar catterflyToButterpillar(Catterfly catterfly) {
- return null; // to be implemented
+ Butterpillar butterpillar = new Butterpillar();
+ butterpillar.setLength(catterfly.getWingspan() / getLengthToWingspan());
+ butterpillar.setLeavesEaten(catterfly.getWeight() / getLeavesEatenToWeight());
+ return butterpillar; // to be implemented
}
public boolean equals(GrowthModel g) {
- return false; // TODO: to be implemented
+ boolean check = (g.lengthToWingspan == g.getLengthToWingspan() && g.leavesEatenToWeight == g.getLeavesEatenToWeight());
+ return check; // TODO: to be implemented
}
@Override
public String toString() {
- return null; // TODO: to be implemented
+ return "GrowthModel [lengthToWingspan=" + lengthToWingspan + ", leavesEatenToWeight=" + leavesEatenToWeight
+ + "]";
}
@Override
- public boolean equals(Object o) {
- if (o instanceof GrowthModel) {
- return this.equals((GrowthModel) o);
- } else {
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ long temp;
+ temp = Double.doubleToLongBits(leavesEatenToWeight);
+ result = prime * result + (int) (temp ^ (temp >>> 32));
+ temp = Double.doubleToLongBits(lengthToWingspan);
+ result = prime * result + (int) (temp ^ (temp >>> 32));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ GrowthModel other = (GrowthModel) obj;
+ if (Double.doubleToLongBits(leavesEatenToWeight) != Double.doubleToLongBits(other.leavesEatenToWeight))
+ return false;
+ if (Double.doubleToLongBits(lengthToWingspan) != Double.doubleToLongBits(other.lengthToWingspan))
return false;
- }
+ return true;
}
}