Question
Complete the code for this PiggyBank class. I have also included a main program (TestPiggy) for you to use to test your class. When I
Complete the code for this PiggyBank class. I have also included a main program (TestPiggy) for you to use to test your class. When I grade your PiggyBank class, I will use this exact same main program so be sure your class compiles and runs with it. I have also attached a screenshot of what your output should look like. Note the way the numeric values are formatted; yours should be the same.
public class PiggyBank implements Measurable, Comparable {
private int numNickels, numPennies, numDimes, numQuarters;
// to do; complete the constructor
public PiggyBank() {
}
// to do; complete the constructor
public PiggyBank(int quarters, int dimes, int nickels, int pennies){
}
// to do; it just returns 0; code it so that it returns the monetary
// amount of the piggy bank
public double getMeasure(){
return 0.0;
}
// to do; it just returns 0; code it so that it correctly compares
public int compareTo(Object other){
return 0;
}
// to do; it just returns a blank string right now
public String toString(){
return "";
}
}
public class Data{ public static double average(Measurable[] objects){ double sum = 0; for (Measurable obj : objects){ sum = sum + obj.getMeasure(); } if (objects.length > 0){return sum / objects.length;} else {return 0;} } }
import java.text.NumberFormat; import java.util.Arrays;
public class TestPiggy {
public static void main(String[] args) { PiggyBank [] banks = new PiggyBank[10]; banks[0] = new PiggyBank(5, 10, 19, 32); banks[1] = new PiggyBank(6, 0, 2, 1); banks[2] = new PiggyBank(0, 20, 15, 3); banks[3] = new PiggyBank(1, 3, 99, 591); banks[4] = new PiggyBank(0, 0, 10, 0); banks[5] = new PiggyBank(15, 3, 0, 25); banks[6] = new PiggyBank(); banks[7] = new PiggyBank(11, 3, 0, 1); banks[8] = new PiggyBank(0, 0, 1, 5); banks[9] = new PiggyBank(8, 10, 20, 100); NumberFormat formatter = NumberFormat.getCurrencyInstance(); String moneyString = formatter.format(Data.average(banks)); System.out.println ("The average of all the piggy banks is " + moneyString); Arrays.sort(banks); System.out.println ("The piggy banks in sorted order, smallest to largest, are:"); for (int i = 0; i < 10; i++) System.out.println (banks[i]); }
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started