The TestColator should test the following public class Collator { private String
ID: 3920245 • Letter: T
Question
The TestColator should test the following
public class Collator
{
private String label;
private int numReadings;
private int total;
private int maximum;
private int minimum;
Collator(String label) {
this.label = label;
numReadings = 0;
total = 0;
maximum = 0;
minimum = 0;
}
void label(String label) {
this.label = label;
}
String label() { return label; }
void recordReading(int reading) {
if (numReadings<1) {
// This must be the first reading
total = reading;
maximum = reading;
minimum = reading;
numReadings = 1;
}
else {
// Update total and number of readings.
total = total+reading;
numReadings++;
// Check for a new maximum
if (reading>maximum) {
maximum = reading;
}
// Check for a new minimum
if (reading<minimum) {
minimum = reading;
}
}
}
public int maximum() {
return maximum;
}
public int minimum() {
return minimum;
}
public double average() {
return total/(double)numReadings;
}
public int numberOfReadings() { return numReadings; }
}
Explanation / Answer
Hi.. I have written TestColator class to test the above class.
TestColator.java
public class TestColator {
public static void main(String[] args) {
// TODO Auto-generated method stub
Collator c = new Collator("Sample Colator");
System.out.println("Label:"+c.label());
c.label("Test Colator");
System.out.println("After change Label:"+c.label());
c.recordReading(3);
System.out.println("Maximum:"+c.maximum());
System.out.println("Minimum:"+c.minimum());
System.out.println("Average:"+c.average());
System.out.println("Total Number of readings:"+c.numberOfReadings());
c.recordReading(2);
System.out.println("Maximum:"+c.maximum());
System.out.println("Minimum:"+c.minimum());
System.out.println("Average:"+c.average());
System.out.println("Total Number of readings:"+c.numberOfReadings());
c.recordReading(1);
System.out.println("Maximum:"+c.maximum());
System.out.println("Minimum:"+c.minimum());
System.out.println("Average:"+c.average());
System.out.println("Total Number of readings:"+c.numberOfReadings());
}
}
Output:
Label:Sample Colator
After change Label:Test Colator
Maximum:3
Minimum:3
Average:3.0
Total Number of readings:1
Maximum:3
Minimum:2
Average:2.5
Total Number of readings:2
Maximum:3
Minimum:1
Average:2.0
Total Number of readings:3
Collator.java
public class Collator {
private String label;
private int numReadings;
private int total;
private int maximum;
private int minimum;
Collator(String label) {
this.label = label;
numReadings = 0;
total = 0;
maximum = 0;
minimum = 0;
}
void label(String label) {
this.label = label;
}
String label() {
return label;
}
void recordReading(int reading) {
if (numReadings < 1) {
// This must be the first reading
total = reading;
maximum = reading;
minimum = reading;
numReadings = 1;
} else {
// Update total and number of readings.
total = total + reading;
numReadings++;
// Check for a new maximum
if (reading > maximum) {
maximum = reading;
}
// Check for a new minimum
if (reading < minimum) {
minimum = reading;
}
}
}
public int maximum() {
return maximum;
}
public int minimum() {
return minimum;
}
public double average() {
return total / (double) numReadings;
}
public int numberOfReadings() {
return numReadings;
}
}
Please test the above and let me know if any querries. Thank you. All the best.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.