From 9c9a2e10b4b7309f672f322ab355122102b3229b Mon Sep 17 00:00:00 2001 From: Dylan Dang Date: Fri, 17 Jun 2016 10:41:55 -0400 Subject: [PATCH 1/4] Added readme file and Travis CI badge --- README.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 README.md 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 +=== + +[![Build Status](https://travis-ci.org/dgdang97/jax-ftd-day-4-java-assignment.svg?branch=dgdang97)](https://travis-ci.org/dgdang97/jax-ftd-day-4-java-assignment) From c3d9b94416af0aa0fd92d358edc7d335fda8eaaf Mon Sep 17 00:00:00 2001 From: Dylan Dang Date: Fri, 17 Jun 2016 10:50:10 -0400 Subject: [PATCH 2/4] Specified java 8 in travis config --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) 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 From 8796e85821a78c8c4b398f49d3d9fea504dcfb2e Mon Sep 17 00:00:00 2001 From: Dylan Dang Date: Fri, 17 Jun 2016 11:40:27 -0400 Subject: [PATCH 3/4] Completed functions --- .classpath | 2 +- .../butterpillar/model/Butterpillar.java | 15 +++++++---- .../cooksys/butterpillar/model/Catterfly.java | 15 ++++++----- .../butterpillar/model/GrowthModel.java | 25 +++++++++++++------ 4 files changed, 37 insertions(+), 20 deletions(-) diff --git a/.classpath b/.classpath index af1430b..563565b 100644 --- a/.classpath +++ b/.classpath @@ -12,7 +12,7 @@ - + diff --git a/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java b/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java index 1060573..afa8ccf 100644 --- a/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java +++ b/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java @@ -4,24 +4,28 @@ 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 @@ -41,3 +45,4 @@ public boolean equals(Object o) { } + diff --git a/src/main/java/com/cooksys/butterpillar/model/Catterfly.java b/src/main/java/com/cooksys/butterpillar/model/Catterfly.java index 81ff09a..4e7cbe5 100644 --- a/src/main/java/com/cooksys/butterpillar/model/Catterfly.java +++ b/src/main/java/com/cooksys/butterpillar/model/Catterfly.java @@ -3,25 +3,28 @@ 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 diff --git a/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java b/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java index 3f034fd..e218cdd 100644 --- a/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java +++ b/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java @@ -3,33 +3,42 @@ 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 From 3e6ab878f3f5999b7c72ec30805d019f99534edd Mon Sep 17 00:00:00 2001 From: Dylan Dang Date: Fri, 17 Jun 2016 12:18:22 -0400 Subject: [PATCH 4/4] Auto generated toString and Equals --- .../butterpillar/model/Butterpillar.java | 31 ++++++++++++++---- .../cooksys/butterpillar/model/Catterfly.java | 31 ++++++++++++++---- .../butterpillar/model/GrowthModel.java | 32 +++++++++++++++---- 3 files changed, 76 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java b/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java index afa8ccf..f5cda7d 100644 --- a/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java +++ b/src/main/java/com/cooksys/butterpillar/model/Butterpillar.java @@ -30,16 +30,35 @@ public boolean equals(Butterpillar b) { @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 4e7cbe5..4675d8e 100644 --- a/src/main/java/com/cooksys/butterpillar/model/Catterfly.java +++ b/src/main/java/com/cooksys/butterpillar/model/Catterfly.java @@ -29,16 +29,35 @@ public boolean equals(Catterfly c) { @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 e218cdd..20d1c58 100644 --- a/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java +++ b/src/main/java/com/cooksys/butterpillar/model/GrowthModel.java @@ -43,16 +43,36 @@ public boolean equals(GrowthModel g) { @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; } }