Write a method onlySquares
that accepts a list of Shape
s and returns
a list of Shape
s where anything other than a Rectangle
with the same
height and width is removed from the original list. You may assume that
the list passed is not null and does not contain any null elements.
Your solution must make use of a stream and at least one lambda expression
and/or method reference.
There are 3 classes available to you:
Shape
- an abstract class with the following methods:Shape(double centerX, double centerY)
double getCenterX()
double getCenterY()
abstract double getArea()
abstract double getPerimeter()
Circle
- a class with the following methods:Circle(double centerX, double centerY, double radius)
double getArea()
double getPerimeter()
Rectangle
- a class with the following methods:Rectangle(double centerX, double centerY, double width, double height)
double getHeight()
double getWidth()
double getArea()
double getPerimeter()
You're challenge is to write tests for this problem described above.
Stuck? You may find these lessons helpful: